这是我当前的JSON文件:PHP JSON file_put_contents空白
{"coins":"0","uses":"0"}
...我重写值用下面的PHP:
$data = json_decode(file_get_contents('test.json'), true);
$data["coins"] = iconv($data["coins"] + $coins);
$data["uses"] = iconv($data["uses"] + 1);
file_put_contents('test.json', json_encode($data));
我打印出来的$data
值并且已经看到它包含了新的价值。然而,file_put_contents
写入的文件总是空白。有关这是为什么的任何建议?
编辑:
这是$data
回报:
Array ([coins] => 100 [uses] => 1)
改变了我的代码一点点后,好像file_put_contents
回报false
。不过,我已将文件权限设置为(test.json
)。
调用'file_put_contents()'调用的返回值是什么? 'true'还是'false'?我假设“错误”,这在大多数情况下导致系统为正在运行PHP的用户授予的写权限不足。 – TiMESPLiNTER
可能您缺少对目标文件/目标的写入权限? – Steini
@TiMESPLiNTER:由于文件已打开,且以前的内容已被删除,因此权限不足无法成为问题的根源。 – mcserep