PHP教學系列(三)-變數和常數
有學過C語言或是VB.net等類似的程式語言,就會知道變數的使用是相當重要的。但是,在一般的程式語言中,使用變數通常需要宣告它的資料型別和預設值。但是PHP卻不需要,只需要定義變數名稱,PHP便會依照變數的值自動判別資料型別。
變數的定義和規則:
定義:
變數的功能是用來儲存數字、字串、陣列或函式等資料,方便在程式中多次存取。
命名規則:
在PHP中變數的命名以[$]做為開頭,例如:
命名規則:
1.一個正確的變數命名開頭的第一個字必須為英文字母或是[_]下劃線符號 (不得使用數字或中文)
2.第一個字元後,可以接受任意字元 ( _ (下劃線)、 英文字母、數字、中文)
例如:
正確格式:
$phpVar
$phpVar1
$php_var
$_phpVar
錯誤格式:
$變數1 //不可以中文開頭
$9phpVar //不可以數字開頭
全局變數、區域變數、靜態變數
一般來說,定義的變數在整個程式中都能讀取稱為”全局變數”,而在函式(function)內的變數,只能在函式區域內使用,因此稱為”區域變數”
例如:
<?php
$a=14; //全局變數
function varEx() {
echo $a; //區域變數
}
varEx();
?>
在上述範例,varEx()並不會輸出任何字,因為$a並沒有定義,在函式內的區域變數$a與全局的變數$a是互相不侵犯的獨立變數。
但若要將函式內的變數,變成全局變數可在變數的前面加入 global 。
例如:
<?php
$a=10;
$b=20;
function varEx() {
global $a,$b; //全域變數
$a=$a+$b;
echo $a;
}
varEX();
?>
實際範例:example-3-1-1.php
全局變數:
1.在 function 外宣告。
2.在網頁關閉時,全域變數被銷毀。
3.若要在 function 中使用全域變數,則需使用關鍵字 global。
區域變數:
1.在宣告的 function 中使用。
2.不同的函式(function)可命名相同的變數名稱,彼此互不影響。
3.在函式執行完後,便會被銷毀。
靜態變數:
如同上面所說,區域變數在函式(function)執行完畢後,便會銷毀,但有時我們仍需要用到該區域變數的值,這時,我們便可以在區域變數的前面加入static 這經常用在迴圈應用。
範例:
<?php
function numCount()
{
static $num = 1; //在函式區域變數添加static
$num ++; //$num=$num+1
return $num;
}
for ($i = 0; $i < 10; $i ++) {
echo numCount(), “<br>”; //在函式外也能使用$num變數值
}
?>
實際範例:example-3-1-2.php
PHP的內建變數
$_SERVER : 儲存跟伺服器有關的資訊陣列變數,例如網頁虛擬路徑、伺服器名稱等。
$_ENV : 以陣列方式儲存環境相關變數
$_GET : get 傳送的資訊陣列變數。
$_POST : 表單 post 傳送的資訊陣列變數。
$_FILES : 存放表單檔案處理方面的陣列變數。
$_COOKIE : 存放 cookie 的陣列變數。
$_SESSION : 存放 session 的陣列變數。
$_REQUEST : 接收 $_GET 、 $_POST 、 $_COOKIE 等變數
參考資料:http://www.php.net/manual/en/reserved.variables.php
變數使用範例:
<?php
$Var_ex1=14; //數字型別變數
$Var_ex2=14+8; //數字型別變數 (會回傳22)
$Var_ex3=”aidec.tw”; //字串型別變數
$Var_ex4= True //布林型別變數
?>
常數將在下一頁介紹
感謝您的閱讀,請用力地分享讓大家知道吧~~
1 2
很抱歉,此文章關閉留言