php 的變數類型不多,有以下五種:
string
integer
double
array
object
string 即為字串變數,無論是單一字元或數千字的字串都是使用這個變數類型。值得注意的是要指定字串給字串變數,要在頭尾加上雙引號 (例如: "這是字串")。在要讓字串換行時,可使用溢出字元,也就是反斜線加上指定的符號,若是 \x 加上二位元字,如 \xfe 即表十六進位字元,詳見下表:
\"雙引號\\反斜線\n換行\r送出 cr\t跳位 (tab) 符號 意義
integer 為整數型別。在 32 位的作業系統中,它的有效範圍是 -2,147,483,648 到 +2,147,483,647。要使用 16 進位整數可以在面加 0x。
double 為浮點數型別。在 32 位的作業系統中,它的有效範圍是 1.7e-308 到 1.7e+308。
array 為陣列變數,可以是二維、三維或者多維陣列,其中的元素也很自由,可以是 string、integer 或者 double,甚至是 array。
object 為類變數,目前在 php 中的類不多,若論及類,microsoft 的 asp 類仍然較 php 的預設類多,相信這有賴大家的努力。不過話又說回來,web cgi 程式要求的是效率,以完全物件導向的方式,恐怕使用者在瀏覽時也會因為程式執行速度慢而很不耐煩吧。
要使用變數,只要在英文字串前面加個美元號 $ 即可,目前變數名稱仍不能使用中文。至於變數的大小寫是不一樣的,對開發 php 程式的 team 來說,最好使用相同的變數使用風格,以免屆時因為變數大小的問題,花許多無謂的時間去找尋問題點,那就麻煩了。
以下為變數的使用範例:
$mystring = "我是字串";
$wilsonpeng = "網頁教學網真不錯";
$newline = "換行了\n";
$int1 = 38;
$int2 = 49;
$hexint = 0x10;
$float1 = 1.732;
$float2 = 1.4e+2;
$myarray1 = array("子", "醜", "寅", "卯");
$myarray2 = array(
"地支" => array("子", "醜", "寅", "卯"),
"生肖" => array("鼠", "牛", "虎", "兔"),
"數字" => array(1, 2, 3, 4)
);
類的使用上就比較麻煩了,要先定義類別,甚至必須先要方法,才能使用類,如下例:
class foo {
function do_foo () {
echo "doing foo.";
}
}
$bar = new foo;
$bar -> do_foo ();
此外,還有布爾值 (boolean),通常 1 即為 true,0 為 false。
在變數之間,若要轉換類型,在 php 程式中是很自由的,直接就拿來用了,不必經過特殊的轉換函式。當然,浮點數轉成整數就有點牽強了,不過可以將浮點數轉成字串,也是很好處理。