溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php變量設(shè)置值的方式有哪些

發(fā)布時(shí)間:2021-08-09 13:48:34 來源:億速云 閱讀:151 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)php變量設(shè)置值的方式有哪些的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

首先我們需要了解一下變量,這樣才能更好的了解變量的賦值方式。

變量通俗的來說是一種容器,是臨時(shí)存儲(chǔ)值的容器,它可以儲(chǔ)存數(shù)字、文本、或者一些復(fù)雜的數(shù)據(jù)等;這些數(shù)據(jù),就是“變量值”。且根據(jù)變量類型不同,容器的大小不一樣,存放的數(shù)據(jù)大小也是不相同的。

因?yàn)镻HP是一種弱類型的語言,所以使用變量前不用提前聲明,在第一次賦值時(shí)會(huì)被自動(dòng)創(chuàng)建。PHP中的變量用一個(gè)美元符號(hào)“$”后面跟變量名來表示(注:變量名是區(qū)分大小寫的)。

例:

<?php
    $name = '西門慶';
    $_age = 25;
    $sex = '男';        
    echo "姓名:{$name},年齡:{$_age}, 性別:{$sex}";
?>

PHP變量名并不是可以隨意定義的,它遵循一定的命名規(guī)則,通常是以字母(A~z)或下劃線(_)開頭,由字母、數(shù)字(0~9)、下劃線組成。

例如下面的變量聲明就是錯(cuò)誤的:

$1sex = '男';  // 錯(cuò)誤,不能以數(shù)字開頭

一般PHP變量在聲明時(shí),就進(jìn)行了賦值操作,下面我們就來了解一下PHP變量的賦值方式。

PHP中有兩種傳值方式,分別為傳值賦值引用賦值。

1、傳值賦值

“傳值賦值”是PHP中默認(rèn)的傳值方式,可以像上文那樣使用“=”運(yùn)算符直接將值賦給變量

<?php
    $a = 1; 
?>

也可以將一個(gè)變量的值,賦予給另一個(gè)變量。我們看看下面這個(gè)例子:

<?php
$a = 100;
$b = $a;    // 將$a的值復(fù)制一份,傳給$b
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

輸出結(jié)果:

$a = 100
$b = 100

需要注意的是:賦予變量值的方式,其實(shí)是將一個(gè)變量的值,“復(fù)制”一份,再傳給另一個(gè)變量。本質(zhì)上這兩個(gè)變量是相互獨(dú)立的,因此改變其中一個(gè)變量的值,將不會(huì)影響到另外一個(gè)變量??纯聪旅孢@個(gè)例子:

<?php
$a = 100;
$b = $a;    // 將$a的值復(fù)制一份,傳給$b
$a = 200;   // 重新為 $a 賦值
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

我們來看看輸出結(jié)果:

$a = 200
$b = 100

但有時(shí)我們就需要,改變其中一個(gè)變量的值,另外一個(gè)變量也跟著改變,這樣怎么辦?那就需要使用“引用賦值”了。

2、引用賦值

“引用賦值”簡(jiǎn)單來說就是:新的變量引用了原始的變量。它會(huì)將一個(gè)變量的內(nèi)存地址,“復(fù)制”一份,傳給另一個(gè)變量。

這也就意味著,兩個(gè)變量是有關(guān)聯(lián)的,改變了新的變量的值將影響到原始的變量的值,反之亦然。

“引用賦值”和“傳值賦值”差不多,只是多了一步:在需要在被引用的變量(源變量)前加上“&”符號(hào)(C語言中稱之為取地址符)。

<?php
$a = 100;
$b = &$a;     // 將$a的地址復(fù)制一份,傳給$b
$a = 200;   // 重新為 $a 賦值
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

通過取地址符&,變量$a和變量$b的值指向了同一個(gè)內(nèi)存地址,當(dāng)我們修改其中一個(gè)變量的值時(shí),另一個(gè)變量的值自然而然的隨之被改變。我們來看看輸出結(jié)果:

$a = 200
$b = 200

注:只有有名字的變量才可以引用賦值。

<?php
$foo = 25;
$bar = &$foo;      // 合法的賦值
$bar = &(24 * 7);  // 非法; 引用沒有名字的表達(dá)式
?>

(24*7)這個(gè)表達(dá)式中因?yàn)闆]有保存在變量中,所以沒有明確的內(nèi)存地址,通過取地址符去獲取在內(nèi)存中存儲(chǔ)的地址是不可取的。我們來看看輸出結(jié)果:

php變量設(shè)置值的方式有哪些

感謝各位的閱讀!關(guān)于“php變量設(shè)置值的方式有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI