php 中引用的應用

2021-06-28 15:20:46 字數 1684 閱讀 2771

<?php 

// /**在php 中引用的意思是:不同的名字訪問同乙個變數內容.

(1) 變數之間的引用:

$a = 10 ; $b =$a ; // 此時$b和$a所指向的是同一儲存位址 ,如果$a = 11 ; 則zend會開闢乙個新的單元從來是的$a = 11 ; $b 還是原來的位址

$a = 10 ; $b =&$a ; // 此時$b 就是$a的別名,比如這個人叫小張,大名叫張三一樣,如果 $a = 11 ; $b 也會跟著變 */

$a="abc";

$b =&$a;

echo $a;//這裡輸出:abc

echo $b;//這裡輸出:abc

$b="efg";

echo $a;//這裡$a的值變為efg 所以輸出efg echo $b;//這裡輸出efg

// (2) 函式的傳址呼叫(這裡使用引用的意義在於,對於大陣列節省記憶體空間)

function contest(&$p_vale)

$value_1 = 1;

echo $value_1; // 1

contest($value_1);

// 相當於變數的別名

echo $value_1 ; // 2

//(3) 函式的引用

function &confunctest()

echo '函式的引用

' ;$a=confunctest();//這條語句會輸出 $b的值 為1

$a=5; $a=confunctest();//這條語句會輸出 $b的值 為2

$a=&confunctest();//這條語句會輸出 $b的值 為3

// 此時相當於$a = &$b ;

$a=5;

// 此時 $b是$a的別名 $b = 5;

$a=confunctest();

//這條語句會輸出 $b的值 為6

//(4) 物件的引用,物件的引用也是為了節省空間

class object

}$object_a = new object;

$object_b = $object_a;

// 上面等效於 $object_b = &$object_a;

echo $object_a->value;//這裡輸出abc

// 修改物件a的值,會影響b的值,因為$b 是$a的引用

$object_a->value = 'not hello';

echo $object_b->value;//這裡輸出not hello

// 如果不想影響物件a的值,可以使用魔術方法 __clone

$obj2 = clone $object_a;

echo $obj2->value;

//(5) 變數銷毀

$a = 11 ; $b =&$a ; unset($a); // 此時 $b = 11;

// 相當於

function quotetest()

$var=1;

quotetest();

echo $var; //

echo $wlt = 111;

print_r($globals);

unset($wlt) ;

print_r($globals);

php中的 引用

引用是什麼 在 php 中引用意味著用不同的名字訪問同乙個變數內容。這並不像 c 的指標,替代的是,引用是符號表別名。注意在 php 中,變數名和變數內容是不一樣的,因此同樣的內容可以有不同的名字。最接近的比喻是 unix 的檔名和檔案本身 變數名是目錄條目,而變數內容則是檔案本身。引用可以被看作是...

PHP中 的應用

php中 表示乙個變數的宣告,value test 表示變數value的值是test。而 則好像是c語言中的指標,它指向乙個變數值的乙個變數。例如 value a 這句話的意思就是首先取 value變數的值,為test,然後再將其值變成乙個變數即表示為 test a php view plain c...

PHP4 中的引用

引用是個很奇妙的東西,有點類似c中的指標,但是又不一樣!在php中,引用只是變數內容的另外乙個名字。下面我打幾個比方說明一下 只是php4的內容,php5中關於類和物件的用法有很大的變化,還沒有仔細研究過 1 a b 這裡建立了乙個引用 a,他指向變數名為 b的變數所指向的變數內容,羅嗦一點了啊。打...