PHP基礎(chǔ)之引用的解釋3——引用的取消和定位
當(dāng) unset 一個(gè)引用,只是斷開(kāi)了變量名和變量?jī)?nèi)容之間的綁定。這并不意味著變量?jī)?nèi)容被銷(xiāo)毀了。例如:
<?php $a = 1; $b =& $a; unset($a);?>
不會(huì) unset $b,只是 $a。
再拿這個(gè)和 Unix 的 unlink 調(diào)用來(lái)類(lèi)比一下可能有助于理解。
引用定位許多 PHP 的語(yǔ)法結(jié)構(gòu)是通過(guò)引用機(jī)制實(shí)現(xiàn)的,所以上述有關(guān)引用綁定的一切也都適用于這些結(jié)構(gòu)。一些結(jié)構(gòu),例如引用傳遞和返回,已經(jīng)在上面提到了。其它使用引用的結(jié)構(gòu)有:
global 引用當(dāng)用 global $var 聲明一個(gè)變量時(shí)實(shí)際上建立了一個(gè)到全局變量的引用。也就是說(shuō)和這樣做是相同的:
<?php $var =& $GLOBALS['var'];?>
這意味著,例如,unset $var 不會(huì) unset 全局變量。
$this在一個(gè)對(duì)象的方法中,$this 永遠(yuǎn)是調(diào)用它的對(duì)象的引用。
相關(guān)文章:
1. Android 7.0 運(yùn)行時(shí)權(quán)限彈窗問(wèn)題的解決2. 解決idea中yml文件不識(shí)別的問(wèn)題3. IDEA的Mybatis Generator駝峰配置問(wèn)題4. IntelliJ IDEA設(shè)置條件斷點(diǎn)的方法步驟5. IntelliJ Idea2017如何修改緩存文件的路徑6. java實(shí)現(xiàn)圖形化界面計(jì)算器7. Python使用oslo.vmware管理ESXI虛擬機(jī)的示例參考8. Thinkphp3.2.3反序列化漏洞實(shí)例分析9. python 爬取B站原視頻的實(shí)例代碼10. Thinkphp5文件包含漏洞解析
