使用php怎么取出数组的单个值

  介绍

使用php怎么取出数组的单个值吗?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

<强> 1。数的arr组

var_dump (arr)值如下:

array (大?3)   ,& # 39;删除# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170222 - 101501. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170222 - 105502. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170222 - 108803. - txt # 39;,(长度=31)   ,& # 39;新# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170223 - 101504. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170223 - 105505. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170223 - 108806. - txt # 39;,(长度=31)   ,& # 39;老# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170221 - 101507. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170221 - 105508. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170221 - 108809. - txt # 39;,(长度=31)
 echo 美元arr[& # 39;老# 39;][0];
  打印出:hbsflyrecode20170221 - 101507。txt 

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

var_dump (arr)   对象(stdClass) [1]   ,public  & # 39;删除# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170222 - 101501. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170222 - 105502. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170222 - 108803. - txt # 39;,(长度=31)   ,public  & # 39;新# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170223 - 101504. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170223 - 105505. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170223 - 108806. - txt # 39;,(长度=31)   ,public  & # 39;老# 39;,=祝辞,   ,array (大?3)   0,才能=祝辞,string  & # 39; hbsflyrecode20170221 - 101507. - txt # 39;,(长度=31)   1,才能=祝辞,string  & # 39; hbsflyrecode20170221 - 105508. - txt # 39;,(长度=31)   ,,2,=祝辞,string  & # 39; hbsflyrecode20170221 - 108809. - txt # 39;,(长度=31)

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

function  getValue (arr) {   ,foreach ($ arr  as  key 美元;=祝辞,美元值){   如果才能(is_array(美元值)){   ,,getValue(美元值);   }{其他才能   ,,echo 价值美元霸主地位;& lt; br>“;   ,,}   ,}   }

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

1。美元$ object_json=json_encode (arr);得到的是对象

$ json=json_encode (arr美元,真的);得到的是纯json

2。json_decode (object_json美元)和json_decode (json)美元得到的是数组对象

json_decode (object_json美元,真的)和json_decode (json美元,真的)得到的是数组

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

arr=jsondecode (jsonencode (arr=jsondecode (jsonencode(加勒比海盗,真的),真的),

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

json_encode(加勒比海盗,真);jsondecode(加勒比海盗,真);jsondecode (json,真的);

使用php怎么取出数组的单个值