您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關php變量設置值的方式有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
首先我們需要了解一下變量,這樣才能更好的了解變量的賦值方式。
變量通俗的來說是一種容器,是臨時存儲值的容器,它可以儲存數字、文本、或者一些復雜的數據等;這些數據,就是“變量值”。且根據變量類型不同,容器的大小不一樣,存放的數據大小也是不相同的。
因為PHP是一種弱類型的語言,所以使用變量前不用提前聲明,在第一次賦值時會被自動創建。PHP中的變量用一個美元符號“$
”后面跟變量名來表示(注:變量名是區分大小寫的)。
例:
<?php $name = '西門慶'; $_age = 25; $sex = '男'; echo "姓名:{$name},年齡:{$_age}, 性別:{$sex}"; ?>
PHP變量名并不是可以隨意定義的,它遵循一定的命名規則,通常是以字母(A~z)或下劃線(_)開頭,由字母、數字(0~9)、下劃線組成。
例如下面的變量聲明就是錯誤的:
$1sex = '男'; // 錯誤,不能以數字開頭
一般PHP變量在聲明時,就進行了賦值操作,下面我們就來了解一下PHP變量的賦值方式。
PHP中有兩種傳值方式,分別為傳值賦值和引用賦值。
1、傳值賦值
“傳值賦值”是PHP中默認的傳值方式,可以像上文那樣使用“=
”運算符直接將值賦給變量
<?php $a = 1; ?>
也可以將一個變量的值,賦予給另一個變量。我們看看下面這個例子:
<?php $a = 100; $b = $a; // 將$a的值復制一份,傳給$b echo '$a = '.$a; echo '<br> $b = '.$b; ?>
輸出結果:
$a = 100 $b = 100
需要注意的是:賦予變量值的方式,其實是將一個變量的值,“復制”一份,再傳給另一個變量。本質上這兩個變量是相互獨立的,因此改變其中一個變量的值,將不會影響到另外一個變量。看看下面這個例子:
<?php $a = 100; $b = $a; // 將$a的值復制一份,傳給$b $a = 200; // 重新為 $a 賦值 echo '$a = '.$a; echo '<br> $b = '.$b; ?>
我們來看看輸出結果:
$a = 200 $b = 100
但有時我們就需要,改變其中一個變量的值,另外一個變量也跟著改變,這樣怎么辦?那就需要使用“引用賦值”了。
2、引用賦值
“引用賦值”簡單來說就是:新的變量引用了原始的變量。它會將一個變量的內存地址,“復制”一份,傳給另一個變量。
這也就意味著,兩個變量是有關聯的,改變了新的變量的值將影響到原始的變量的值,反之亦然。
“引用賦值”和“傳值賦值”差不多,只是多了一步:在需要在被引用的變量(源變量)前加上“&
”符號(C語言中稱之為取地址符)。
<?php $a = 100; $b = &$a; // 將$a的地址復制一份,傳給$b $a = 200; // 重新為 $a 賦值 echo '$a = '.$a; echo '<br> $b = '.$b; ?>
通過取地址符&,變量$a和變量$b的值指向了同一個內存地址,當我們修改其中一個變量的值時,另一個變量的值自然而然的隨之被改變。我們來看看輸出結果:
$a = 200 $b = 200
注:只有有名字的變量才可以引用賦值。
<?php $foo = 25; $bar = &$foo; // 合法的賦值 $bar = &(24 * 7); // 非法; 引用沒有名字的表達式 ?>
在(24*7)
這個表達式中因為沒有保存在變量中,所以沒有明確的內存地址,通過取地址符去獲取在內存中存儲的地址是不可取的。我們來看看輸出結果:
感謝各位的閱讀!關于“php變量設置值的方式有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。