PHP数组键值双引号单引号区别
来源:互联网 发布:开心贝贝童装淘宝店招 编辑:程序博客网 时间:2024/05/09 15:50
一、$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]
以上三种方式主要是通过字符串类型数组下标即数组键访问数组的值,如果数组下标为索引类型即键值为数字则无需注意。
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数组键值双引号单引号区别
- PHP数组array键值双引号单引号区别
- PHP数组键值双引号单引号区别
- PHP数组键值双引号单引号区别
- PHP数组键值双引号单引号区别
- PHP数组键值使用单引号和双引号和无符号的区别
- php单引号 双引号区别
- PHP单引号和双引号区别
- PHP单引号和双引号区别
- php 单引号和双引号区别
- php 双引号与单引号区别
- PHP单引号、双引号的区别
- php单引号和双引号区别
- PHP 单引号双引号的区别
- php str_replace 单引号 双引号 区别
- PHP单引号和双引号区别
- PHP单引号和双引号区别
- PHP中单引号与双引号的区别
- 海量数据处理专题(一)——开篇
- XML序列化与反序列化类库
- Red and Black 搜索
- 提高你的Java代码质量吧:不要让类型默默转换
- 话说耳鼻喉之鼻
- PHP数组键值双引号单引号区别
- NYoj 17 单调递增最长子序列[典型动态规划1]
- RealView 编译工具的几个特殊命令函数
- Big Data Ingestion and streaming product introduction
- Java中abstract class和interface有什么区别?
- linux下ftp 无法连接目标主机报421 Service not available, remote server has closed connection
- C#的位运算
- HDU 1698 just a hook 线段树
- 谷歌编码规范