b.inc內容:
程式能夠正常輸出hello,但是被註解掉的test()不能正常解析,因為變數$a是未定義的。 4、使用全域變數 若在某個函數中想使用全域變量,可以透過下面兩種方式。 global關鍵字 global $a, $b; 在函數中宣告全域變數後,對任一變數的所有參考都會指向其全域版本。 $GLOBALS超全域變數數組 $GLOBALS['b'] = $GLOBALS['a'] $BLOBALS['b']; 用法同global關鍵字相似。 5、靜態變數
靜態變數僅在局部函數域中存在,但當程式執行離開此作用域時,其值並不會遺失。並且,只在宣告時初始化一次,每次呼叫函數並不會覆寫靜態函數的值。
test(); 複製程式碼 cnt--;}int main(void ) {
return 0; }複製程式碼 變數的static和globald以引用的方式實現的。 $$a = 'world';
echo "$a $ $a"; // hello $hello echo "$a ${$a}"; // hello world複製程式碼 當可變變數用於數組時,可能會出現模棱兩可的問題。例如,寫下$$a[1],編譯器會報錯的,你想要表達的意思需要用下面兩種方式替換掉。 ${$a[1]} $a[1]作為一個變數 ${$a}[1] $$a作為一個變數並取出變數中索引為1的值。
form>
因為句點不是PHP變數名稱中的合法字符,輸出結果: boolean false boolean false boolean true string 'h3' (length=2) magic_quotes_gpc配置指令影響到get/post/cooie的值,這個特性已經廢棄移除,輸入中的單引號、雙引號、反斜線和NULL字元都不會被轉義。若需要轉義可使用addslashes(),若需要反引用一個引用的字串需要使用stripslashes()。 php也懂得表單變數上下文中的陣列。 例子,使用更複雜的表單變量,並將表單post給自己並在提交時顯示資料。
在heredoc中含有複雜變數時要格外小心,上面這段程式碼$_SERVER['PHP_SELF']不加花括號會在運行時報錯。
對於上面這段程序,當使用者點擊圖片某處時,表單會傳送到伺服器,並加上兩個變數sub_x和sub_y,包含了使用者點擊圖片的座標。 array (size=3) 'action' => string '1' (length=1) 'sub_x' => string '334' (length=3) 'sub_y' => string '282' (length=3) cookiesphp可以用setcookie()函數設定cookies,cookies是http訊息頭的一部分,因此必須在傳送任何輸出給瀏覽器之前呼叫。 php cookie使用: cookie資料在對應的cookie數組中可用,如果將多個值賦給一個cookie變量,必須將其賦成數組。 |