php取出数组单个值的方法


Posted in PHP onMarch 12, 2018

1.数组arr

var_dump(arr) 值如下:

array (size=3)
 'delete' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170222-101501.txt' (length=31)
  1 => string 'HBSFlyRecode20170222-105502.txt' (length=31)
  2 => string 'HBSFlyRecode20170222-108803.txt' (length=31)
 'new' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170223-101504.txt' (length=31)
  1 => string 'HBSFlyRecode20170223-105505.txt' (length=31)
  2 => string 'HBSFlyRecode20170223-108806.txt' (length=31)
 'old' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170221-101507.txt' (length=31)
  1 => string 'HBSFlyRecode20170221-105508.txt' (length=31)
  2 => string 'HBSFlyRecode20170221-108809.txt' (length=31)
echo $arr['old'][0];
打印出: HBSFlyRecode20170221-101507.txt

但是如果arr是对象形式 , 打印结果如下:

var_dump(arr)
object(stdClass)[1]
 public 'delete' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170222-101501.txt' (length=31)
  1 => string 'HBSFlyRecode20170222-105502.txt' (length=31)
  2 => string 'HBSFlyRecode20170222-108803.txt' (length=31)
 public 'new' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170223-101504.txt' (length=31)
  1 => string 'HBSFlyRecode20170223-105505.txt' (length=31)
  2 => string 'HBSFlyRecode20170223-108806.txt' (length=31)
 public 'old' => 
 array (size=3)
  0 => string 'HBSFlyRecode20170221-101507.txt' (length=31)
  1 => string 'HBSFlyRecode20170221-105508.txt' (length=31)
  2 => string 'HBSFlyRecode20170221-108809.txt' (length=31)

就不能使用 $arr[‘old'][0] 取值了 , 可以使用arr对象和数组通用的foreach方式取值:

function getValue($arr){
 foreach($arr as $key => $value){
  if(is_array($value)){
   getValue($value);
  }else{
   echo $value."<br>";
  }
 }
}

如果arr为对象形式 , 可以考录将对象转为数组形式 , 这里提供一种快捷方式:

1. $object_json = json_encode($arr);得到的是对象

$json = json_encode($arr,true);得到的是纯json

2. json_decode($object_json) 和 json_decode($json)得到的是数组对象

json_decode($object_json,true) 和 json_decode($json,true)得到的是数组

综上 , 可以将数组对象转为数组的方式:

arr=jsondecode(jsonencode(arr=jsondecode(jsonencode(arr,true),true);

项目中发现此问题 , 建议大家在php中将json和array转换时 , json_encode() 和 json_decode()的第二个参数要加 true , 即:

json_encode(arr,true);jsondecode(arr,true);jsondecode(json,true);

以上这篇php取出数组单个值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
phpBB BBcode处理的漏洞
Oct 09 PHP
一个可查询所有表的“通用”查询分页类
Oct 09 PHP
javascript 小型动画组件与实现代码
Jun 02 PHP
在MongoDB中模拟Auto Increment的php代码
Mar 06 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
Laravel 5框架学习之Eloquent 关系
Apr 09 PHP
Yii CGridView用法实例详解
Jul 12 PHP
详解Yii2 之 生成 URL 的方法
Jun 16 PHP
PHP截取发动短信内容的方法
Jul 04 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 PHP
laravel5.6中的外键约束示例
Oct 23 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
Jan 04 PHP
php合并数组并保留键值的实现方法
Mar 12 #PHP
php删除二维数组中的重复值方法
Mar 12 #PHP
PHP重置数组为连续数字索引的几种方式总结
Mar 12 #PHP
php关联数组与索引数组及其显示方法
Mar 12 #PHP
基于php数组中的索引数组和关联数组详解
Mar 12 #PHP
PHP生成加减算法方式的验证码实例
Mar 12 #PHP
thinkphp中U方法按路由规则生成url的方法
Mar 12 #PHP
You might like
PHP网站开发中常用的8个小技巧
2015/02/13 PHP
golang 调用 php7详解及实例
2017/01/04 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
LazyLoad 延迟加载(按需加载)
2010/05/31 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
json中换行符的处理方法示例介绍
2014/06/10 Javascript
javascript自定义函数参数传递为字符串格式
2014/07/29 Javascript
向JavaScript的数组中添加元素的方法小结
2015/10/24 Javascript
js实现动态加载脚本的方法实例汇总
2015/11/02 Javascript
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
vue组件命名和props命名代码详解
2019/09/01 Javascript
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
[50:34]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[00:34]拔城逐梦,热血永恒!2020(秋)完美世界城市挑战赛报名开启
2020/10/09 DOTA
Python中的连接符(+、+=)示例详解
2017/01/13 Python
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
python中报错&quot;json.decoder.JSONDecodeError: Expecting value:&quot;的解决
2019/04/29 Python
python如何以表格形式打印输出的方法示例
2019/06/21 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
wxPython之wx.DC绘制形状
2019/11/19 Python
Django自定义全局403、404、500错误页面的示例代码
2020/03/08 Python
python 生成任意形状的凸包图代码
2020/04/16 Python
计算Python Numpy向量之间的欧氏距离实例
2020/05/22 Python
关于tf.matmul() 和tf.multiply() 的区别说明
2020/06/18 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
美国庭院家具购物网站:AlphaMarts
2019/04/10 全球购物
关联、聚合(Aggregation)以及组合(Composition)的区别
2012/02/29 面试题
节约用水标语
2014/06/11 职场文书
离职证明范本(5篇)
2014/09/19 职场文书
2015年大学团支部工作总结
2015/05/13 职场文书
员工试用期工作总结
2019/06/20 职场文书
导游词之四川武侯祠
2019/10/21 职场文书
MySQL表类型 存储引擎 的选择
2021/11/11 MySQL