php中的 “->”用法
发布网友
发布时间:2022-04-07 04:46
我来回答
共5个回答
懂视网
时间:2022-04-07 09:08
【->】符号是“插入式解引用操作符”。换句话说,它用来调用由引用传递参数的子程序的方法(当然,还有其它的作用)。正如我们上面所提到的,在调用PHP的函数的时候,大部分参数都是通过引用传递的。PHP中的‘->’功能就和它们在Perl或C++中一样。
下面是一个简单的解引用的例子:
echo $x->def(); # 输出
【->】操作符用于类、对象的操作中,一般是类方法的调用,以下是示例:
<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
?>
更多相关教程请访问Gxlcms。
热心网友
时间:2022-04-07 06:16
$captcha & CAPTCHA_LOGIN
是用来验证后台是否开启验证码。
给你贴一段代码,你可以看下。:)
<?php
/**
* 模仿error_reporting()的特殊结构,来实现复选框验证。
* 1 E_ERROR 2 E_WARNING 4 E_PARSE 8 E_NOTICE 这是error_repoting()常量的取值,当然还有许多,就不一一列出,但都统一遵循一个规律。
* 1 2 4 8... 是一个很特殊的数字序列,在二进制下,这些数字完全没有重叠,可以有多种组合,一般用在 checkbox多选的情况下。
* 例如:个人爱好:吃饭【1】 睡觉【2】 游戏【3】 音乐【4】
* 如果选择前两个,1+2 = 3,前三个,1+2+4 = 7,我们在存储选中状态的时候,只需要存一个和值就OK,而不需存储每个爱好的选择状态。
* 在以后使用的时候,只需要checkmask()验证,即可还原状态。
* 具体看下面实列:
*/
if(empty($_POST['mask'])) {
$arr = array('吃饭','睡觉','游戏','音乐'); //note 需要生成的选项数组
checkbox($arr);
} else {
$sum = setmask($love); //note $sum可以存储到数据库或文件中,这里仅仅为了测试,未做保存。
//验证数组,如果有更多,此处索引值一定要遵循二进制的规律。值为2的(n-1)次幂
$arr = array('1' => '吃饭', '2' => '睡觉', '4' => '游戏', '8' => '音乐');
echo'你的爱好:
';
foreach ($arr as $k => $v) {
if(checkmask($sum,$k)){
echo $v.'
';
}
}
}
/**
* 生成复选框
* author:dain_sun
* @param array checkbox值的数组
*/
function checkbox($arr) {
echo '';
$i = 1;
foreach($arr as $value) {
echo ''.$value.'
';
$i++;
}
echo '';
echo '';
}
/**
* 获取选中的状态
* author:dain_sun
* @param array checkbox值的数组
* @return int 选中状态,二进制的和值
*/
function setmask($arr) {
if (empty($arr)) return 0;
$sum = 0;
foreach($arr as $key => $val) {
$sum += empty($val) ? 0 :(1 << ($val - 1));
}
return $sum;
}
/**
* 还原选中状态
* author:dain_sun
* @param int $sum 保存状态的掩码和值
* @param int $mask 掩码值(1,2,4,8......)//note 此处掩码值既为验证数组的key值
* @return bloon
*/
function checkmask($sum, $mask) {
$sum = intval($sum);
$mask = intval($mask);
return ($mask != 0 && (($sum & $mask) == $mask));
}
?>
热心网友
时间:2022-04-07 07:34
PHP5中,-> 多为“对象属性”访问符号。 比如说你有一个新的对象 $new_obj = new class(); 那么在声明class类的时候,访问其自身属性name 就需要 $this->name , 针对 $new_obj ,其自身的name属性也要这么访问 $new_obj ->name;
热心网友
时间:2022-04-07 09:08
看看php手册对mysql_fetch_object的介绍:mysql_fetch_object() 和 mysql_fetch_array() 类似,只有一点区别 - 返回一个对象而不是数组。间接地也意味着只能通过字段名来访问数组,而不是偏移量(数字不是合法的属性名)。 <?php/* this is valid */
echo $row->field;
/* this is invalid */
echo $row->0;?> 手册里有这个例子:<?php
mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");
$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result)) {
echo $row->user_id;
echo $row->fullname;
}
mysql_free_result($result);
?> 这样看应该明白了吧.
热心网友
时间:2022-04-07 11:00
mysql_fetch_object()这个函数是返回一个对象,,,从函数名也能看出来对于对象的操作当然是->罗