溫馨提示×

溫馨提示×

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

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

PHP用引用的原因

發(fā)布時間:2020-10-19 17:41:12 來源:億速云 閱讀:129 作者:小新 欄目:編程語言

小編給大家分享一下PHP用引用的原因,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

PHP為什么用引用    

什么是引用?

在 PHP 中引用意味著用不同的名字訪問同一個變量內容。這并不像 C 的指針,替代的是,引用是符號表別名。注意在 PHP 中,變量名和變量內容是不一樣的,因此同樣的內容可以有不同的名字。最接近的比喻是 Unix 的文件名和文件本身——變量名是目錄條目,而變量內容則是文件本身。引用可以被看作是 Unix 文件系統(tǒng)中的 hardlink。

1.變量的引用

<?
    a="ABC";a="ABC";b =&a;echoa;echoa;//這里輸出:ABC
    echo b;//這里輸出:ABCb;//這里輸出:ABCb="EFG";
    echo a;//這里a;//這里a的值變?yōu)镋FG 所以輸出EFG
    echo $b;//這里輸出EFG
?>

2.函數的引用傳遞

<?php
    function test(&a)$a=$a+100;a)$a=$a+100;b=1;
    echo b;//輸出1test(b;//輸出1test(b);   //這里b傳遞給函數的其實是b傳遞給函數的其實是b的變量內容所處的內存地址,通過在函數里改變a的值 就可以改變a的值 就可以改變b的值了
    echo "<br>";
    echo $b;//輸出101
?>

3.函數的引用返回

<?php
function &test()
{
    static b=0;//申明一個靜態(tài)變量b=0;//申明一個靜態(tài)變量b=b+1;echob+1;echob;
    return b; }b; }a=test();//這條語句會輸出 b的值 為1b的值 為1a=5;
a=test();//這條語句會輸出a=test();//這條語句會輸出b的值 為2

a=&test();//這條語句會輸出a=&test();//這條語句會輸出b的值 為3
a=5;a=5;a=test();//這條語句會輸出 $b的值 為6
?>

4.對象的引用

<?php
    class a{
        var abc="ABC";     }abc="ABC";     }b=new a;
    c=c=b;
    echo b?>abc;//這里輸出ABCechob?>abc;//這里輸出ABCechoc->abc;//這里輸出ABC
    b?>abc="DEF";echob?>abc="DEF";echoc->abc;//這里輸出DEF
?>

5.引用的作用

如果程序比較大,引用同一個對象的變量比較多,并且希望用完該對象后手工清除它,建議用 "&" 方式,然后用$var=null的方式清除. 其它時候使用php5的默認方式. 另外, php5中對于大數組的傳遞,建議用 "&" 方式, 能夠節(jié)省內存空間使用。

以上是PHP用引用的原因的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

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

php
AI