我使用Ajax将包含大约2000-3000个元素的对象(所有这些都是整数或短字符串)传递给php文件。从我从调试中可以看出,对象完整地到达PHP代码。但是当我运行json_encode时它被截断了。
这里是传递函数
function saveWerJSON (output) {
console.log(output);
$.post("writefile.php", output, function(output){ console.log("yes"); });
};
这里是完整的PHP文件
<?php
file_put_contents("wer1861.json", json_encode($_POST, JSON_NUMERIC_CHECK | JSON_PRETTY_PRINT));
?>
文件在1422行(长度:40300)后切断。文件中的json有效。所以变量在写入之前就被截断了。
这是json_encode的限制吗?我看到json_encode有一个&#34;深度&#34;变量,但它似乎没有得到很好的记录......