Php 尝试从JSON列表中计算数组的长度
我试图计算我在php中使用Php 尝试从JSON列表中计算数组的长度,php,arrays,json,Php,Arrays,Json,我试图计算我在php中使用JSON\u decode从JSON转换而来的数组的长度,但由于某种原因它不起作用。这是我当前的代码。JSON列表包含一个包含10000项的数组。我很确定我错过了什么。任何帮助都将不胜感激 PHP 答案实际上是对另一个类似问题的回答 因此,在对用户D4V1D进行一些测试后,发现问题是由于PHP函数json_decode不工作,因为它不是UTF-8格式。解决方法是 $fl = file_get_contents($somepath); $text = json_deco
JSON\u decode
从JSON转换而来的数组的长度,但由于某种原因它不起作用。这是我当前的代码。JSON列表包含一个包含10000项的数组。我很确定我错过了什么。任何帮助都将不胜感激
PHP
答案实际上是对另一个类似问题的回答 因此,在对用户D4V1D进行一些测试后,发现问题是由于PHP函数
json_decode
不工作,因为它不是UTF-8格式。解决方法是
$fl = file_get_contents($somepath);
$text = json_decode(utf8_encode($fl), true);
$len = count($text["alphalist"]);
现在,
$len
将给出正确的数组长度。如果我的解释中有任何错误或改进,请将其放在注释中,我会相应地更正。什么是echo$len代码>返回到目前为止?当我测试itI时,它返回0
,我刚刚测试了您的代码,并且json\u解码
您的json
字符串返回数组中的5个元素。您确定要发布完整的代码吗?对不起。你是对的。这不是完整的代码。整个json文件有20000行。我通过在线验证验证了它,但我不确定问题是什么。请发布问题的解决方案,以便它可以帮助其他人,并在两天内接受答案:)
{
"alphalist": [{
"a": "alphabet1."
}, {
"b": "alphabet2."
}, {
"c": "alphabet3."
}, {
"d": "alphabet4."
}, {
"e": "alphabet5."
}
....
{
"zzzzz": "alphabet10000."
}
]
}
$fl = file_get_contents($somepath);
$text = json_decode(utf8_encode($fl), true);
$len = count($text["alphalist"]);