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 相关文章推荐
PHP中在数据库中保存Checkbox数据(2)
Oct 09 PHP
ADODB的数据库封包程序库
Dec 31 PHP
php笔记之常用文件操作
Oct 12 PHP
php中通过curl smtp发送邮件
Jun 05 PHP
探讨PHP JSON中文乱码的解决方法详解
Jun 06 PHP
php开启openssl的方法
May 15 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
PHP基于mssql扩展远程连接MSSQL的简单实现方法
Oct 08 PHP
php 截取utf-8格式的字符串实例代码
Oct 30 PHP
Yii核心验证器api详解
Nov 23 PHP
关于php支持的协议与封装协议总结(推荐)
Nov 17 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 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 iconv() : Detected an illegal character in input string
2010/12/05 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
PHP中图片等比缩放的实例
2013/03/24 PHP
php的sprintf函数的用法 控制浮点数格式
2014/02/14 PHP
THINKPHP项目开发中的日志记录实例分析
2014/12/01 PHP
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
Jquery加载时从后台读取数据绑定到dropdownList实例
2013/06/09 Javascript
js实现局部页面打印预览原理及示例代码
2014/07/03 Javascript
JavaScript使用function定义对象并调用的方法
2015/03/23 Javascript
JavaScript中利用各种循环进行遍历的方式总结
2015/11/10 Javascript
使用Javascript写的2048小游戏
2015/11/25 Javascript
AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
2016/01/25 Javascript
AngularJs IE Compatibility 兼容老版本IE
2016/09/01 Javascript
vue.js整合mint-ui里的轮播图实例代码
2017/12/27 Javascript
使用socket.io制做简易WEB聊天室
2018/01/02 Javascript
js实现复制功能(多种方法集合)
2018/01/06 Javascript
Vue实现微信支付功能遇到的坑
2019/06/05 Javascript
element中Steps步骤条和Tabs标签页关联的解决
2020/12/08 Javascript
[02:57]DOTA2亚洲邀请赛 SECRET战队出场宣传片
2015/02/07 DOTA
django开发之settings.py中变量的全局引用详解
2017/03/29 Python
Python计时相关操作详解【time,datetime】
2017/05/26 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
2018/03/15 Python
pandas数据分组和聚合操作方法
2018/04/11 Python
Python批量生成特定尺寸图片及图画任意文字的实例
2019/01/30 Python
Python实现多进程的四种方式
2019/02/22 Python
python脚本当作Linux中的服务启动实现方法
2019/06/28 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
澳大利亚领先的在线美容商店:Facial Co
2017/10/22 全球购物
人力资源管理专业毕业生自我评价
2013/09/21 职场文书
竞聘演讲稿精彩开头和结尾
2014/05/14 职场文书
单位同意报考证明
2015/06/17 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
MySQL复制问题的三个参数分析
2021/04/07 MySQL
javascript代码简写的几种常用方式汇总
2021/08/23 Javascript
Python之Matplotlib绘制热力图和面积图
2022/04/13 Python