几个关于php符号 & 的问题 1. $relation_info['ext_limit'] && $ext_limit = ' AND ' . $this->_getExtLimit($relation_info['ext_limit']);2. function &m() {}以上两种 & 的用法是什么意思? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有2个?我怎么只看到一个&&就是and 是逻辑与&就是引用,和C语言中的指针类似,准确的说,是函数有返回值,然后其他别名要使用,为了不COPY更多的对象或者标量,用&指向同一块内存 &解释PHP 的引用允许用两个变量来指向同一个内容。意思是,当这样做时: <?php$a =& $b;?> 这意味着 $a 和 $b 指向了同一个变量。 注: $a 和 $b 在这里是完全相同的,这并不是 $a 指向了 $b 或者相反,而是 $a 和 $b 指向了同一个地方。 注: 如果具有引用的数组被拷贝,其值不会解除引用。对于数组传值给函数也是如此。引用做的第二件事是用引用传递变量。这是通过在函数内建立一个本地变量并且该变量在呼叫范围内引用了同一个内容来实现的。例如: <?phpfunction foo(&$var){ $var++;}$a=5;foo($a);?> 将使 $a 变成 6。这是因为在 foo 函数中变量 $var 指向了和 $a 指向的同一个内容 &&是逻辑与运算符,表示如果左操作数和右操作数都为真的话,运算结果为真,否则就为假。如: $a=true; $b=true; $b2=false;$c=$a&&$b;//此处,$c的值为true,因为$a和$b都是true,&&的运算结果也为true$d=$b2&&$a;//此处,$d的值为false,因为$b2不是true,是false,所以&&的运算结果为false 两位不好意思,我问问题时太仓促了,没有表述好,现在我重新整理一下...第一个问题我想找到的是像 is_file($conf_file) && $plugins = include($conf_file); 这样的句子,执行是怎么样的一个逻辑.第二个问题根据你们的回答,是不是说 &m() 函数的返回值将是一个指针? is_file($conf_file) && $plugins = include($conf_file); -------------------------------------------------------如果前面的条件成立, 则执行&&后面的, 相当于 if() //do something 第二个问题根据你们的回答,是不是说 &m() 函数的返回值将是一个指针?---------------------------------------------------------不是返回一个指针, 而是把函数的返回結果的存放地址指向 将要赋给的变量 借用网上的一个例子function &test(){static $b=0;//申明一个静态变量$b=$b+1;echo $b;return $b;}$a=test();// 值 为1$a=5;$a=test();// 值 为2$a=&test();// 值 为3$a=5;$a=test();//值 为6 , php页面,设置滚动条不生效? PHP mysql数据库变量写不进去 急!! smarty模块里面 config_dir路径里面的东西是干嘛的? 为何我无法运行html中的php代码? 数据库查询问题 有个愚蠢的想法,不知道能否实现?请教了 请问在php文件内指令执行另一个php文件的函数 为什么在用gd2的时候出错一大堆错误? ★★★★分页技术★★★★ 如何判断用户输入的是中文还是英文,数字,或者是非法的字幅。 PHP如何实现URL重写,谢谢 php表单提交取不到值。。
我怎么只看到一个&&就是and 是逻辑与
&就是引用,和C语言中的指针类似,准确的说,是函数有返回值,然后其他别名要使用,为了不COPY更多的对象或者标量,用&指向同一块内存
&解释
PHP 的引用允许用两个变量来指向同一个内容。意思是,当这样做时:
<?php
$a =& $b;
?>
这意味着 $a 和 $b 指向了同一个变量。
注: $a 和 $b 在这里是完全相同的,这并不是 $a 指向了 $b 或者相反,而是 $a 和 $b 指向了同一个地方。
注: 如果具有引用的数组被拷贝,其值不会解除引用。对于数组传值给函数也是如此。引用做的第二件事是用引用传递变量。这是通过在函数内建立一个本地变量并且该变量在呼叫范围内引用了同一个内容来实现的。例如:
<?php
function foo(&$var)
{
$var++;
}$a=5;
foo($a);
?>
将使 $a 变成 6。这是因为在 foo 函数中变量 $var 指向了和 $a 指向的同一个内容
&&是逻辑与运算符,表示如果左操作数和右操作数都为真的话,运算结果为真,否则就为假。如:
$a=true;
$b=true;
$b2=false;$c=$a&&$b;//此处,$c的值为true,因为$a和$b都是true,&&的运算结果也为true
$d=$b2&&$a;//此处,$d的值为false,因为$b2不是true,是false,所以&&的运算结果为false
-------------------------------------------------------如果前面的条件成立, 则执行&&后面的, 相当于 if() //do something
---------------------------------------------------------不是返回一个指针, 而是把函数的返回結果的存放地址指向 将要赋给的变量
{
static $b=0;//申明一个静态变量
$b=$b+1;
echo $b;
return $b;
}
$a=test();// 值 为1
$a=5;
$a=test();// 值 为2
$a=&test();// 值 为3
$a=5;
$a=test();//值 为6 ,