PHP變數引用賦值與變數賦值變數的區別

來源:互聯網
上載者:User

標籤:

變數預設總是傳值賦值。那也就是說,當將一個運算式的值賦予一個變數時,整個原始運算式的值被賦值到目標變數。這意味著,例如,當一個變數的值賦予另外一個變數時,改變其中一個變數的值,將不會影響到另外一個變數。有關這種類型的賦值操作,請參閱運算式一章。

<?php$foo=‘abc‘;$b=$foo;$b="my name is $b";echo "$b"; //my name is abcecho "$foo"; // abc

PHP 也提供了另外一種方式給變數賦值:引用賦值。這意味著新的變數簡單的引用(換言之,“成為其別名” 或者 “指向”)了原始變數。改動新的變數將影響到原始變數,反之亦然。

使用引用賦值,簡單地將一個 & 符號加到將要賦值的變數前(源變數)。例如,下列代碼片斷將輸出“My name is Bob”兩次:

<?php$foo  =  ‘Bob‘ ;               // 將 ‘Bob‘ 賦給 $foo $bar  = & $foo ;               // 通過 $bar 引用 $foo $bar  =  "My name is  $bar " ;   // 修改 $bar 變數 echo  $bar ;echo  $foo ;                  // $foo 的值也被修改 ?> 

 雖然在 PHP 中並不需要初始設定變數,但對變數進行初始化是個好習慣。未初始化的變數具有其類型的預設值 - 布爾類型的變數預設值是 FALSE ,整形和浮點型變數預設值是零,字串型變數(例如用於 echo 中)預設值是Null 字元串以及陣列變數的預設值是空數組。 

PHP變數引用賦值與變數賦值變數的區別

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.