联系电话:0755-27515592
最新动态:

PHP教程

你的位置: 首页>>智慧亿恩>>PHP教程

PHP数组键值的单双引号区别详解

点击数:12352015-07-29 16:35:19 来源: 外贸网站建设,深圳外贸网站建设,深圳网站建设,外贸商城网站制作-亿恩科技

新闻摘要:我们写遍历数组时会有几种方法如直接$arr[\key\] 与 $arr[\key\] 与 $arr[key]了我们都可以显示出要关内容,但是他们区别在哪里呢,下面我来介绍一下. 一、$arr[key] 与 $arr[key] 与 $arr[key]的差别

我们写遍历数组时会有几种方法如直接$arr[\'key\'] 与 $arr[\"key\"] 与 $arr[key]了我们都可以显示出要关内容,但是他们区别在哪里呢,下面我来介绍一下.

一、$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],代码如下:

  1. <?php 
  2. define('constant','arr1');
  3. $constant = 'arr2';
  4. $variable = 'arr1';
  5. $arr = array(
  6.    'arr1'=>'arr1',  
  7.    'arr2'=>'arr2',  
  8.    'arr3'=>'arr3',  
  9. );
  10. echo $arr['arr1'],'<br/>',$arr["$variable"],'<br/>',$arr[constant],'<br/>',$arr[$constant];
  11. ?>
【责任编辑:(Top) 返回页面顶端
贴心
全国7×24小时客服热线
安全
病毒杀除率高于99%
稳定
网站可用性高于99.9%
实力
服务68家上市企业及集团公司
亿恩科技手机站
关注亿恩科技微信

亿恩科技—企业信息化一站式服务专家


Copyright © 2008- 深圳市亿恩科技有限公司版权所有 粤ICP备15056041号

联系我们 | 常见问题 | 在线留言 | 支付方式 | 软件开发 | 我的观点 | 资质荣誉 | 服务流程