**舉例:
**php$arr
=array('
a'=>
'one',
'b'=>
'two');
$arr2
=array(0
=>
'one',
1=>
'two');
$arr3
=array('
a'=>
'one',
'b'=>
'two');
define('
a','
b');
//定義常量 a
echo
$arr3
[a];
//解釋為 $arr['b']
echo
$arr2[0
];
//輸出 'one'
echo
$arr
[b];
//會產生警告,但不是錯誤。會解釋為 $arr['b']
echo
$arr
[a];
//會產生警告,但不是錯誤。會解釋為 $arr['a']
?>
分析:一定要加引號,如果不加引號,則方括號中是乙個常量,php 可能會在以後定義此常量,不幸的是你的**中有同樣的名字。
它能執行,是因為 php 自動將裸字串(沒有引號的字串且不對應於任何已知符號)轉換成乙個其值為該裸字串的正常字串。
例如,如果沒有常量定義為 anykey,php 將把它替代為 'anykey' 並使用之。
結果:$arr['a'] 的效率高於 $arr[a];
PHP 陣列中的引號問題
舉例 php arr array a one b two arr2 array 0 one 1 two arr3 array a one b two define a b 定義常量 a echo arr3 a 解釋為 arr b echo arr2 0 輸出 one echo arr b 會產生警告...
PHP中引號的使用
一 引號定義字串 1.在普通字串的定義上單引號和雙引號的效果相同 如 i am a string in single quotes i am a string in double quotes 2.混合使用時以以哪種開頭,就以哪種結尾 如 s i am a single quote string i...
PHP中的魔術引號
魔術引號 magic quote 是乙個自動將進入 php 指令碼的資料進行轉義的過程。最好在編碼時不要轉義而在執行時根據需要而轉義。當開啟時,所有的 單引號 雙引號 反斜線 和 null 字元都會被自動加上乙個反斜線進行轉義。這和 b addslashes b 作用完全相同。轉義魔術引號的函式 b...