【发布时间】:2020-01-16 15:46:49
【问题描述】:
尝试使用Storage:: disk('local')->append() 方法在同一行的文件中添加字符串,但在输出文件中我将每个字符串都放在新行上
我所做的是:
$string = "first-";
Storage::disk('local')->append('filename', $string);
$string = "second";
Storage::disk('local')->append('filename', $string);
输出文件是
first-
second
但我正在尝试获取不带换行符的文件
first-second
【问题讨论】:
-
不确定是否有内置方法可以做到这一点,但您可以尝试更长的方法,获取文件的内容,如
$contents = file_get_contents(...),附加到PHP,通过@987654329 @,然后将整个字符串放入文件中。 (或类似的东西) -
文件将是一个大文件,不想打开它并加载到内存中
-
是的,公平点。您可以在此处查看
FileSystem类(Storage::disk()外观方法的扩展)的所有可用方法:laravel.com/api/5.8/Illuminate/Contracts/Filesystem/…。乍一看,我什么也没看到,但做一些挖掘,可能会发现一些有用的东西。 -
stackoverflow.com/questions/54659226/… 检查那个答案。不幸的是,追加读取整个数据
-
经过测试,我最终使用了 php "file_put_contents" 函数,它完成了工作并且没有填满内存