怎麼理解這個判斷式((DEBUG_MODE & 2) == 2)
((DEBUG_MODE & 2) == 2)//這句如果要成立,就要是((2 & 2)==2)這種式子怎麼理解呀?
define('DEBUG_MODE',false);//如是2是,執行顯示1
if ((DEBUG_MODE & 2) == 2)
{
$smarty = '1';
}
else
{
$smarty= '0';
}
echo $smarty;
?>
復制代碼[ ]
D8888D回貼內容-------------------------------------------------------
“=&”這是什麼運算符呀?
$user =& init_users();
D8888D回貼內容-------------------------------------------------------
是引用,不過在函數前面加&還真不知道有什麼用.
D8888D回貼內容-------------------------------------------------------
位運算中的與運算啊...
D8888D回貼內容-------------------------------------------------------
我來解釋一下
其實這裡的2應該是一個定值,是定義你這種模式的常量,如果這樣寫就好理解了
define('MODE_A',2);
$now_mode = 2;
if(($now_mode & MODE_A) == MODE_A){
echo "當前模式為MODE_A";
}
?>
復制代碼有的同學說了,那為啥不用 == 直接判斷,其實這裡還有一個意義就是包含的關系
如 6 & 2 的值為 2,而6&3 的值也為2,而2 != 3
這種方式往往可以表示一個范圍,對照計算機網絡中IP與子網掩碼的關系理解一下
D8888D回貼內容-------------------------------------------------------
謝謝LS,你的回答就好理解了.
D8888D回貼內容-------------------------------------------------------
原帖由 lmhllr 於 2007-12-17 17:27 發表 [url=http://www.111cn.cn/bbs/redirect.php?goto=findpost&pid=335104&ptid=46748]鏈接標記[img]http://www.111cn.cn/bbs/images/common/back.gif[/img][/url]
位運算中的與運算啊...
能不能解釋下他的作用呢?還是不明白這樣寫的用意.
D8888D回貼內容-------------------------------------------------------
原帖由 jayliu 於 2007-12-17 16:55 發表 [url=http://www.111cn.cn/bbs/redirect.php?goto=findpost&pid=335044&ptid=46748]鏈接標記[img]http://www.111cn.cn/bbs/images/common/back.gif[/img][/url]
是引用,不過在函數前面加&還真不知道有什麼用.
加了&
函數return值為引用
php5默認為引用,不能亂用&,在php5裡如果函數直接return false的話,加了&的function就掛了,php將找不到引用的地址
D8888D回貼內容-------------------------------------------------------
LS的我又學到了新東西呀感謝[img]http://www.111cn.cn/bbs/images/smilies/default/victory.gif[/img]
D8888D回貼內容-------------------------------------------------------
原來這樣呀