PHP编写文本文件会将文本从字符串末尾截断

PHP编写文本文件会将文本从字符串末尾截断,php,file,fwrite,Php,File,Fwrite,在我的代码中,我必须将多个json字符串写入文件。当我这样做时,所写内容的结尾会被看似随机的字符数所切断 我最初尝试使用fwrite(),然后仅使用file\u put\u contents()进行测试,但两种写入文件的方法都会切断字符。该代码段如下所示: print_r( json_encode($verified_results) ); file_put_contents($results_file, json_encode($verified_results)); /*$fh = fope

在我的代码中,我必须将多个json字符串写入文件。当我这样做时,所写内容的结尾会被看似随机的字符数所切断

我最初尝试使用
fwrite()
,然后仅使用
file\u put\u contents()
进行测试,但两种写入文件的方法都会切断字符。该代码段如下所示:

print_r( json_encode($verified_results) );
file_put_contents($results_file, json_encode($verified_results));
/*$fh = fopen($results_file, 'w'); // or die("can't open file");
$stringData = json_encode($verified_results) ;
fwrite($fh, $stringData);

fclose($fh);
print_r(preg_last_error());
*/
我知道json字符串在写入后是完整的,因为
print\r
会在写入文件之前返回完整的字符串。
被截断的文本是:
108个字符

,"elapsedTime":"1 minute ago","hotel_cat":null,"visible":true,"hash_id":"aed1b4c6c515ea040c2e49d874c883a1"}]
 5","elapsedTime":"11 hours ago","hotel_cat":null,"visible":true,"hash_id":"22aa8da3d0b8ef44ec07f8521986fbac"}]

110个字符

,"elapsedTime":"1 minute ago","hotel_cat":null,"visible":true,"hash_id":"aed1b4c6c515ea040c2e49d874c883a1"}]
 5","elapsedTime":"11 hours ago","hotel_cat":null,"visible":true,"hash_id":"22aa8da3d0b8ef44ec07f8521986fbac"}]
第一个文件大小为47KB,截止点在随机点留下108个字符(不是由于无效字符)

第二个文件的大小为52KB,截止点在一个随机点上再次留下110个字符

这么小的文件是什么原因造成的


编辑:(完整代码)


我猜你以后会对这个文件做些什么。如果在没有选项的情况下仅使用
file\u put\u contents()
,则不会使用此选项happen@hek2mgl但我不是。将字符串写入文件之前的
print\r
将返回完整字符串。文件中的文本(在
打印\r
之后立即写入)缺少100个左右的字符显示完整的php脚本。磁盘是否有剩余的可用空间可供写入?不确定您的意思。如果您指的是php.ini配置,那么是的,它们被设置为100MB。如果你指的是服务器的硬盘,它还剩下几百个Gig。