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 相关文章推荐
实用函数10
Nov 08 PHP
Ha0k 0.3 PHP 网页木马修改版
Oct 11 PHP
Search File Contents PHP 搜索目录文本内容的代码
Feb 21 PHP
php图像处理函数大全(推荐收藏)
Jul 11 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
Jan 12 PHP
php fsockopen解决办法 php实现多线程
Jan 20 PHP
ECMall支持SSL连接邮件服务器的配置方法详解
May 19 PHP
ThinkPHP3.1新特性之对Ajax的支持更加完善
Jun 19 PHP
基于php实现随机合并数组并排序(原排序)
Nov 26 PHP
php获取当前月与上个月月初及月末时间戳的方法
Dec 05 PHP
PHP长连接实现与使用方法详解
Feb 11 PHP
php连接MSsql server的五种方法总结
Mar 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
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
PHP根据session与cookie用户登录状态操作类的代码
2016/05/13 PHP
ThinkPHP中调用PHPExcel的实现代码
2017/04/08 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
CI框架实现创建自定义类库的方法
2018/12/25 PHP
PHP7新特性
2021/03/09 PHP
js AspxButton的客户端操作
2009/06/26 Javascript
jQuery之按钮组件的深入解析
2013/06/19 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
2013/10/23 Javascript
JQuery实现鼠标滚轮滑动到页面节点
2015/07/28 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
详解webpack+angular2开发环境搭建
2017/06/28 Javascript
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
2017/08/09 jQuery
JavaScript实现元素滚动条到达一定位置循环追加内容
2017/12/28 Javascript
《javascript少儿编程》location术语总结
2018/05/27 Javascript
axios+Vue实现上传文件显示进度功能
2019/04/14 Javascript
package.json各个属性说明详解
2020/03/11 Javascript
python中使用pyhook实现键盘监控的例子
2014/07/18 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
[原创]Python入门教程3. 列表基本操作【定义、运算、常用函数】
2018/10/30 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
解决python 读取 log日志的编码问题
2019/12/24 Python
Python sep参数使用方法详解
2020/02/12 Python
python 自定义异常和主动抛出异常(raise)的操作
2020/12/11 Python
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别
2012/11/04 面试题
教学大赛获奖感言
2014/01/15 职场文书
新员工入职感言
2014/02/01 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
法学院毕业生求职信
2014/06/25 职场文书
环境卫生工作汇报材料
2014/10/28 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
父亲去世追悼词
2015/06/23 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
pytorch 预训练模型读取修改相关参数的填坑问题
2021/06/05 Python
SpringBoot+Vue+JWT的前后端分离登录认证详细步骤
2021/09/25 Java/Android