91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在PHP中返回引用類型

發布時間:2021-03-05 15:12:30 來源:億速云 閱讀:144 作者:Leah 欄目:開發技術

怎么在PHP中返回引用類型?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

php有什么用

php是一個嵌套的縮寫名稱,是英文超級文本預處理語言,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。

返回引用,在定義和調用的時候 & 都不可以省略。

這是個比較容易混淆的概念,如果不是出于某些特殊的原因,建議還是不要使用。

說他很容易混,是因為 Reference 在 PHP5 中的變化,造成其在 PHP4/PHP5 中表現的行為差異比較大。

舉個例子說明:

復制代碼 代碼如下:


<?php
 
$color = 'YellowGreen';
 
function &getRef() {
    global $color;
    return $color;
}
 
function getCopy() {
    global $color;
    return $color;
}
 
$colorRef = &getRef();
$colorRef = 'Blue';
 
//$colorCopy = getCopy();
//$colorCopy = 'Black';
 
 
var_dump($color);
var_dump($colorRef);
//var_dump($colorCopy);
 

運行一遍上面的代碼,差不多就明白了,使用 &getRef() 將把 $colorRef 綁定到 $color 上面,也就是說 $colorRef 和 $color 兩個變量是指向同一個值了。當改變其中一個值時,另一個也會跟著變化。

如果 $color 是一個數組,也是一樣的,上面的代碼在 PHP4/5 的任意版本中,表現行為都是一樣的。

當 $color 是一個 Object 的時候,問題就出現了。

PHP4 中 getCopy 仍然會返回一個復制的 Object;&getRef() 返回引用。

PHP5 中就有點另類了,
最新的 PHP5.2,行為和 PHP4 一樣,getCopy() 返回復制,&getRef() 返回引用。
但是某些的 PHP5 的版本這里稍微有些不同,比如 PHP5.1.6,表現為 getCopy() 和 &getRef() 都是引用。

這里 getCopy() 和 &getRef() 是兩個全局函數,如果放到類里面成為類的 Member functions,那又會是另外一番景象……

PS:返回 References 并不會提高性能,有時候反而降低性能,所以不要想當然的使用這個特性來“優化”程序。

看完上述內容,你們掌握怎么在PHP中返回引用類型的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

凤山县| 清原| 桦川县| 济南市| 桐柏县| 东方市| 赤峰市| 宣化县| 外汇| 岑溪市| 茌平县| 通州市| 石家庄市| 海晏县| 祁门县| 涞源县| 三门峡市| 博客| 翼城县| 渝北区| 福海县| 青岛市| 平阴县| 云梦县| 名山县| 丰都县| 泸定县| 桐梓县| 临湘市| 凭祥市| 彰化县| 芦山县| 普宁市| 金华市| 台北县| 土默特左旗| 朝阳市| 大厂| 盐津县| 成安县| 宜君县|