国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

PHP開發(fā)基礎(chǔ)教程之變量

變數(shù)是用來儲存資訊的"容器":

請見下面的範(fàn)例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>
</body>
</html>



一、與代數(shù)類似

x=5

y=6

z=x+y

  • #在代數(shù)中我們使用字母(例如x)來保存值(例如5)。

  • 從上面的表達式 z=x+y,我們能夠計算 z 的值是 11。

  • ?在 PHP 中,這三個字母稱為變數(shù)。

  • 附註:請把變數(shù)視為儲存資料的容器。


二、PHP變數(shù)

#如代數(shù),PHP 變數(shù)可用來保存值(x=5)和表達式(z =x+y)。

變數(shù)的名稱可以很短(例如 x 和 y),也可以取更具描述性的名稱(例如 number、total_volume)。


三、PHP變數(shù)規(guī)則

  • #變數(shù)以$ 符號開頭,其後是變數(shù)的名稱

  • ?變數(shù)名稱必須以字母或底線開頭

  • ?變數(shù)名稱不能以數(shù)字開頭

  • 變數(shù)名稱只能包含字母數(shù)字字元和底線(A-z、0-9 以及_)

  • 變數(shù)名稱對大小寫敏感($y 與$Y 是兩個不同的變數(shù))

附註:PHP 變數(shù)名稱對大小寫敏感!

實例:

<?php
//site = 'Hello';     // 非法變量名;以數(shù)字開頭
$_4site = 'World';    // 合法變量名;以下劃線開頭
$i小明is = 'haha';  // 合法變量名;可以用中文
?>



#四、建立PHP變數(shù)

PHP 沒有聲明變數(shù)的命令。

變數(shù)在您第一次賦值給它的時候被創(chuàng)建:

<?php
$txt="Hello world!";
$x=5;
$y=10.5;
?>

在上面的語句執(zhí)行中,變數(shù)?txt?將保存值?Hello world!,變數(shù)?x?將儲存值?5 。

附註:當(dāng)您賦一個文字值給變數(shù)時,請在文字值兩邊加上引號。


五、PHP是一門型別鬆散的語言

  • #在上面的實例中,我們注意到,不必向PHP聲明該變數(shù)的資料型態(tài)。

  • PHP 會根據(jù)變數(shù)的值,自動把變數(shù)轉(zhuǎn)換成正確的資料型別。

  • 在強型別的程式語言中,我們必須在使用變數(shù)前先宣告(定義)變數(shù)的型別和名稱。


六、PHP變數(shù)作用域(建議初學(xué)者暫時了解,不用深究)

變數(shù)的作用域是腳本中變數(shù)可被引用/使用的部分。

PHP 有四種不同的變數(shù)作用域:

  • ?local

  • global

  • ?static

  • ?parameter


#1.局部與全域作用域

########1.局部與全域作用域######## ##在所有函數(shù)外部定義的變量,擁有全域作用域。除了函數(shù)外,全域變數(shù)可以被腳本中的任何部分訪問,要在一個函數(shù)中存取一個全域變量,需要使用 global 關(guān)鍵字。 ###

在PHP 函數(shù)內(nèi)部宣告的變數(shù)是局部變量,僅能在函數(shù)內(nèi)部存?。?/p>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php 
$x=5; // 全局變量 

function myTest() 
{ 
    $y=10; // 局部變量 
    echo "<p>測試函數(shù)內(nèi)變量:<p>"; 
    echo "變量 x 為: $x"; 
    echo "<br>"; 
    echo "變量 y 為: $y"; 
}  

myTest(); 

echo "<p>測試函數(shù)外變量:<p>"; 
echo "變量 x 為: $x"; 
echo "<br>"; 
echo "變量 y 為: $y"; 
?>
</body>
</html>



2.PHP global關(guān)鍵字

global 關(guān)鍵字用於函數(shù)內(nèi)存取全域變數(shù)。

  • 在函數(shù)內(nèi)呼叫函數(shù)外定義的全域變量,我們需要在函數(shù)中的變數(shù)前加上global 關(guān)鍵字:

  • ##
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>php.cn</title>
    </head>
    <body>
    <?php
    $x=5;
    $y=6;
    function test(){
    	global $x,$y;
    	$y=$x+$y;
    }
    test();
    echo $y;
    ?>
    </body>
    </html>
註:大家可以把global去掉看看是什麼效果

  • PHP 將所有全域變數(shù)儲存在一個名為$GLOBALS[index] 的陣列中。?index?保存變數(shù)的名稱。這個數(shù)組可以在函數(shù)內(nèi)部訪問,也可以直接用來更新全域變數(shù)。

上面的實例可以寫成這樣:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
$x=5;
$y=6;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
} 
myTest();
myTest();
myTest();
myTest();
echo $y;
?>
</body>
</html>

註:兩個方法實際的效果是一樣的


3 .PHP static關(guān)鍵字

當(dāng)一個函數(shù)完成時,它的所有變數(shù)通常都會被刪除。然而,有時候您希望某個局部變數(shù)不要被刪除。

要做到這一點,請在您第一次宣告變數(shù)時使用?static?關(guān)鍵字:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
function myTest()
{
static $x=0;
echo $x;
$x++;
}
myTest();
myTest();
myTest();
?>
</body>
</html>

註:global內(nèi)的內(nèi)容也會被銷毀嗎? ? ?


4.參數(shù)作用域

參數(shù)是透過呼叫程式碼將值傳遞給函數(shù)的局部變數(shù)。

參數(shù)是在參數(shù)列表中聲明的,作為函數(shù)聲明的一部分:

更多詳細介紹請查看PHP 函數(shù)章節(jié)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
function test($x)
{
echo $x;
}
test(2016);
?>
</body>
</html>



七、可變變數(shù)

可變變數(shù)即變數(shù)的變量,實質(zhì)就是在已經(jīng)宣告過了的變數(shù)前面,再加一個$符號,實例如下

先設(shè)定$x

<?php
$x= 'hello';
$$x='xiao ming';
echo "$x ${$x}";
?>

以上程式碼也可以寫成:

<?php
$x= 'hello';
$hello='xiao ming';
echo "$x $hello";
?>

這兩個例子是等價的

註:可變變數(shù)用於數(shù)組,必須解決一個模稜兩可的問題。這就是當(dāng)寫下$$a[1] 時,解析器需要知道是想要$a[1] 作為一個變數(shù)呢,還是想要$$a 作為一個變數(shù)並取出該變數(shù)中索引為[1] 的值。解決此問題的語法是,對第一種情況用 ${$a[1]},對第二種情況用 ${$a}[1]。

學(xué)習(xí)心得:

  • #對變數(shù)概念的理解,變數(shù)就是放資訊的容器

  • #變數(shù)的四種作用域的應(yīng)該範(fàn)圍與差異

  • #
繼續(xù)學(xué)習(xí)
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <?php $x=5; $y=6; $z=$x+$y; echo $z; ?> </body> </html>