<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>變量</title> </head> <body> <!-- 變量 用于存儲數(shù)據(jù)的容器 --> <!-- PHP 變量規(guī)則: 變量以 $ 符號開始,,后面跟著變量的名稱 變量名必須以字母或者下劃線字符開始 變量名只能包含字母數(shù)字字符以及下劃線(A-z,、0-9 和 _ ) 變量名不能包含空格 變量名是區(qū)分大小寫的($y 和 $Y 是兩個不同的變量) tip:PHP 語句和 PHP 變量都是區(qū)分大小寫的。 當(dāng)賦一個文本值給變量時,,在文本值上加引號 php沒有聲明變量的命令,,變量在第一次賦值時被創(chuàng)建 --> <?php echo "變量<br>"; $a=1; $b=2; $z=$a+$b; echo '$z='.$z; // $z=3 ?> <!-- 變量作用域 --> <!-- local global 用于函數(shù)內(nèi)訪問全局變量 static 當(dāng)一個函數(shù)完成時,它的所有變量通常都會被刪除,。希望某個局部變量不要被刪除,。在第一次聲明變量時使用 static 關(guān)鍵字 parameter --> <!-- 在所有函數(shù)外部定義的變量,擁有全局作用域,, 除了函數(shù)外,,全局變量可以被腳本中的任何部分訪問, 要在一個函數(shù)中訪問一個全局變量,,需要使用global關(guān)鍵字 在php函數(shù)內(nèi)部聲明的變量是局部變量,,僅能在函數(shù)內(nèi)部訪問 --> <?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"; //報錯 ?> <!-- global 用于函數(shù)內(nèi)訪問全局變量 --> <?php $x1=5; $y1=10; function myTest1(){ global $x1,$y1; $y1=$x1+$y1; }; myTest1(); echo $y1; // 輸出 15 ?> <!-- PHP 將所有全局變量存儲在一個名為 $GLOBALS[index] 的數(shù)組中。 index 保存變量的名稱,。這個數(shù)組可以在函數(shù)內(nèi)部訪問,,也可以直接用來更新全局變量。 --> <?php $x2=5; $y2=10; function myTest2(){ $GLOBALS['y2']=$GLOBALS['x2']+$GLOBALS['y2']; }; myTest2(); echo $y2."<br>"; // 輸出 15 ?> <!-- static 當(dāng)一個函數(shù)完成時,,它的所有變量通常都會被刪除,。希望某個局部變量不要被刪除。在第一次聲明變量時使用 static 關(guān)鍵字 然后,,每次調(diào)用該函數(shù)時,,該變量將會保留著函數(shù)前一次被調(diào)用時的值。 注釋:該變量仍然是函數(shù)的局部變量,。 --> <?php function myTest3(){ static $x=0; // $x=0; echo $x." "; $x++; } myTest3(); myTest3(); myTest3(); ?> <!-- 參數(shù)作用域 --> <!-- 參數(shù)是通過調(diào)用代碼將值傳遞給函數(shù)的局部變量。參數(shù)是在參數(shù)列表中聲明的,,作為函數(shù)聲明的一部分: --> <?php echo "<br>"; function myTest4($x){ echo $x; } myTest4(5); ?> <!-- 在 php 中函數(shù)是有獨立的作用域,,所以局部變量會覆蓋全局變量,即使局部變量中并定義沒有全局變量相同的變量,,也會被覆蓋 --> <?php $c=5; $d=3; function t(){ echo $c-$d; // 報錯 輸出 0 } t(); echo "<br>"; echo $c; //輸出 5 echo "<br>"; ?> <?php $e=5; $f=3; function t1(){ global $e,$f; echo $e-$f; // 輸出 2 } t1(); echo PHP_EOL; function t2(){ echo $GLOBALS['e']-$GLOBALS['f']; // 輸出 2 } t2(); ?> <!-- PHP_EOL 換行符 --> <?php echo "3"; echo PHP_EOL; echo "4"; //windows平臺相當(dāng)于 echo "\r\n"; //unix\linux平臺相當(dāng)于 echo "\n"; //mac平臺相當(dāng)于 echo "\r"; ?> </body> </html>
|
|