PHP陣列鍵值雙引號單引號區別

2021-06-16 14:34:14 字數 669 閱讀 9257

一、$myarray['key'] 與 $myarray["key"] 與 $myarray[key]的差別:

以上三種方式主要是通過字串型別陣列下標即陣列鍵訪問陣列的值,如果陣列下標為索引型別即鍵值為數字則無需注意。

1,$myarray['key'] 單引號模式被直接解析為$myarray的值;

2,$myarray["key"]雙引號模式會首先分析"key"字串內部是否包含 php變數,然後再解析為$myarray的值;

3,$myarray[key]沒有任何引號會先分析區域性作用域內有沒有key常量定義(即有無define('key','val')),

如果有則使用區域性key常量代表的常量值作為陣列鍵值;

否則繼續分析全域性作用域內有沒有key常量定義,

如果有則使用全域性key常量代表的常量值作為陣列鍵值;

否則內部轉換key為'key'字串標量值並丟擲e_notice異常。

二、$myarray["$str_key"] 與 $myarray[$str_key]的差別

此方式亦為通過字串型別陣列下標訪問陣列的值,

如果陣列下標為索引型別即數字則無需注意。

其實這裡無需額外新增雙引號以表示$str_key變數代表的是字串值,

即$myarray["$str_key"] === $myarray[$str_key]

PHP陣列鍵值雙引號單引號區別

一 myarray key 與 myarray key 與 myarray key 的差別 以上三種方式主要是通過字串型別陣列下標即陣列鍵訪問陣列的值,如果陣列下標為索引型別即鍵值為數字則無需注意。1,myarray key 單引號模式被直接解析為 myarray的值 2,myarray key 雙...

PHP單引號和雙引號區別

雙引號裡面的字段會經過編譯器解釋,然後再當作html 輸出。單引號裡面的不進行解釋,直接輸出。從字面意思上就可以看出,單引號比雙引號要快了。例如 abc my name is tome echo abc 結果是 my name is tom echo abc 結果是 abc echo abc 結果是...

單引號 雙引號「」反向單引號 的區別

21 23 26 root c8 3 55 echo echo lang echo lang 21 37 14 root c8 3 55 echo echo lang echo zh cn.utf8 21 40 47 root c8 3 55 echo echo lang 單引號內echo和 分別被...