【发布时间】:2015-01-17 14:33:08
【问题描述】:
我是 PHP 新手,正在编写从 URL 获取 JSON 数据的脚本,我从 URL 获取数据并还解码了该 JSON。
但问题是 JSON 解码数组未转换为 String。当我尝试运行到foreach 循环时出现错误
这是数组示例输出:
数组名称为:$data
输出:
array(2) {
[0]=> string(5) "world"
[1]=> array(12) {
[0]=> string(15) "worldstarhiphop"
[1]=> >string(17) "world series 2014"
[2]=> string(18) "world of solitaire"
[3]=> string(9) "world map"
[4]=> string(19) "world's tallest cow"
[5]=> string(10) "world news"
[6]=> string(12) "world series"
[7]=> string(9) "worldstar"
[8]=> string(12) "world market"
[9]=> string(29) "worldstarhiphop official site"
[10]=> string(19) "world's tallest dog"
[11]=> string(17) "world of warcraft"
}
}
我试过了:
if(is_array($data)) {
foreach ($data as $key=>$value) {
echo $value;
}
}
给出这个错误:
Notice: Array to string conversion in
【问题讨论】:
-
$data是一个包含 both 字符串和数组的数组。因此,在循环的一次迭代中,$value是一个数组。 -
那么我可以做些什么来输出该数组的每个值?
-
检查它是否是一个数组(
is_array),然后遍历它并打印每个元素。 -
我已经检查了我的代码
-
我们已经知道
$data是一个数组。我说的是$value。有时是字符串,有时是数组。
标签: php json error-handling type-conversion