php在宣告或者使用變數的時候,不需要顯式指定資料型別,但是php中依然是有型別這一概念的。
php中的型別分為三類:
(1)標量型別:boolean、integer、float、string
(2)復合型別:array、object
(3)特殊型別:resource、null
php中變數的值是儲存在名為zval的結構體中的,
typedef struct _zval_struct zval;
...struct _zval_struct ;
其中type的值可以為:is_null、is_bool、is_long、is_double、is_string、is_array、is_object、is_resource。
變數的實際值儲存在zvalue_value的聯合體中,定義如下:
typedef union _zvalue_value str;
hashtable *ht; /* hash table value */
zend_object_value obj;
} zvalue_value;
從中我們也可以發現,php記錄了string型別變數的長度,因此strlen可以在常數時間內獲得字串的長度。
陣列型別的變數是儲存在hashtable中的,
物件型別的變數使用了一種名為zend_object_value的結構體來儲存,
typedef struct _zend_object_value zend_object_value;
php中自變數 PHP 變數
php 變數作用域 變數的作用域是指令碼中變數可被引用和使用的部分,php 中有四種不同的變數作用域 序號作用域 描述local 區域性作用域 global 全域性作用域 static 靜態作用域 parameter 函式引數作用域 1 local 本地的 區域性變數的作用域 在 php 函式內部宣...
PHP 中的變數
變數用於儲存值,比如數字 文字字串或陣列。一旦設定了某個變數,我們就可以在指令碼中重複地使用它。php 中的所有變數都是以 符號開始的。在 php 中設定變數的正確方法是 var name value php 的入門者往往會忘記在變數的前面的 符號。如果那樣做的話,變數將是無效的。讓我們試著建立乙個...
PHP中的變數
變數是儲存內容的別稱,就像人名是人的代稱一樣,php中的變數用來指代數值 字串 陣列等,它的命名要遵守一定的規則 php變數命名規則 變數要以美元符號 開頭,如 abc 2 定義乙個變數abc 變數的名稱必須以字母或者下劃線開頭,不能以數字開頭,如 nba 2 a 3 分別定義兩個變數並給予賦值 變...