Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 尝试从JSON列表中计算数组的长度_Php_Arrays_Json - Fatal编程技术网

Php 尝试从JSON列表中计算数组的长度

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

我试图计算我在php中使用
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"]);