PHP 陣列中的引號問題

2022-03-27 21:55:18 字數 870 閱讀 6909

**舉例:

**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...