关于PHP中的自增、自减操作的奥秘

WBOY
發布: 2016-06-23 13:48:05
原創
783 人瀏覽過

首先看一道面试题:

    $a = 1;    $b = &$a;    if ($b == $a++)        echo "true";    else        echo "false";
登入後複製

首先,创建了一个变量$a,并且将数值设定为了1;

然后,创建了一个变量$b,并将其作为对$a的一个引用;

最后这个判断语句中,包含两个opcode:POST_INC 和 IS_EQUAL。首先执行的是先返回后自增语句(POST_INC),首先返回1,然后$a自增为了2,因为$b是$a的一个引用,$b也是2。然后执行的是比较语句(IS_EQUAL),因为$b的值是2,$a++的返回值是1,所以不相等。

相类似的面试题目还有:

    $a = 1;    $b = &$a;    $b = $a++;        echo "a: $a; b: $b";
登入後複製



相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板