最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP数组键值的单双引号区别详解
时间:2013-10-18 编辑:简简单单 来源:一聚教程网
一、$arr['key'] 与 $arr["key"] 与 $arr[key]的差别:
以上三种方式主要是通过字符串类型数组下标即数组键访问数组的值,如果数组下标为索引类型即键值为数字则无需注意。
1,$arr['key'] 单引号模式被直接解析为$arr的值;
2,$arr["key"]双引号模式会首先分析"key"字符串内部是否包含 PHP变量,然后再解析为$arr的值;
3,$arr[key]没有任何引号会先分析局部作用域内有没有key常量定义(即有无define('key','val')),
如果有则使用局部key常量代表的常量值作为数组键值;
否则继续分析全局作用域内有没有key常量定义,
如果有则使用全局key常量代表的常量值作为数组键值;
否则内部转换key为'key'字符串标量值并抛出E_NOTICE异常。
二、$arr["$str_key"] 与 $arr[$str_key]的差别
此方式亦为通过字符串类型数组下标访问数组的值,
如果数组下标为索引类型即数字则无需注意。
其实这里无需额外添加双引号以表示$str_key变量代表的是字符串值,
即$arr["$str_key"] === $arr[$str_key]
代码如下 | 复制代码 |
define('constant','arr1'); |
-
上一个: Yii多数据库主从读写分离实例介绍
相关文章
- PHP怎么实现根据数组的值进行分组 有什么方法 04-25
- php数组判断键值是否存在示例 08-04
- php向list数组中增加值的方法 02-09
- php给数组赋值(二维数组赋值)详解 08-23
- thinkphp中统计二维数组里面的某个值输出个数 06-13
- php 查找数组键名并输出值 08-18