JSON数组:PHP警告:数组\计数\值():只能计算字符串和整数值
我已经看了其他问题,但仍然无法理解这个问题 我有以下json格式的一些iso国家代码:JSON数组:PHP警告:数组\计数\值():只能计算字符串和整数值,php,arrays,json,Php,Arrays,Json,我已经看了其他问题,但仍然无法理解这个问题 我有以下json格式的一些iso国家代码: [ { "code": "ZA" }, { "code": "VN" }, { "code": "IN" }, { "code": "AO" }, { "code": "IN" }, { "code": "IN" } ] 我尝试使用数组\u count\u value来计算值,但在较大的数据集上失败了,我不知道为
[
{
"code": "ZA"
},
{
"code": "VN"
},
{
"code": "IN"
},
{
"code": "AO"
},
{
"code": "IN"
},
{
"code": "IN"
}
]
我尝试使用数组\u count\u value
来计算值,但在较大的数据集上失败了,我不知道为什么
我的代码:
这项工作(小数据集):
应读取错误消息。您的数据包含的内容不是字符串或整数
$data = [
'ZA' => 16,
'VN' => 187,
'xx' => []
];
array_count_values($data);
当数组包含非字符串或整数的元素时,输出相同的错误消息。应读取错误消息。您的数据包含的内容不是字符串或整数
$data = [
'ZA' => 16,
'VN' => 187,
'xx' => []
];
array_count_values($data);
当数组包含非字符串或整数的元素时,输出相同的错误消息。问题就在源数据中:
$data = [
'ZA' => 16,
'VN' => 187,
'xx' => []
];
array_count_values($data);
{
"code": null
},
向混合中添加一个将解决此问题:
$json = array_count_values(array_filter(array_column($json, "code")));
如果不将
可调用的传递给数组过滤器()
,它只会过滤掉错误的元素,如null
问题就在源数据中:
{
"code": null
},
向混合中添加一个将解决此问题:
$json = array_count_values(array_filter(array_column($json, "code")));
如果不将可调用的传递给数组过滤器()
,它只会过滤掉错误的元素,如null
OMG。我发誓我搜索了null,但什么也没找到!我不觉得自己很愚蠢吗!非常感谢。编辑:在时间允许的情况下会尽快接受。有趣的是,怎么会有一项,我不知道1000?这是空的。感谢您提供有关array\u filter()
OMG的信息。我发誓我搜索了null,但什么也没找到!我不觉得自己很愚蠢吗!非常感谢。编辑:在时间允许的情况下会尽快接受。有趣的是,怎么会有一项,我不知道1000?这是空的。感谢您提供有关array\u filter()