Laravel Fopen()无法创建/读取文件

Dim*_*fos 1 php json fopen file laravel

所以我有这个Laravel项目,我想将数组导出到json文件中以供以后使用。我在存储文件夹上的权限是777,但是当我这样做时

$line=[
  'key1'=>'value1',
];
file_put_contents("storage/app/test.json",json_encode($line));
Run Code Online (Sandbox Code Playgroud)

我也试过

$line=[
  'key1'=>'value1',
];
file_put_contents($_SERVER['DOCUMENT_ROOT']."/storage/app/test.json",json_encode($line));
Run Code Online (Sandbox Code Playgroud)

在两种情况下(还有更多),我都会收到此错误

file_put_contents(storage/app/test.json): failed to open stream: No such file or directory
Run Code Online (Sandbox Code Playgroud)

您知道为什么会这样吗?

编辑:文件夹存在

Bib*_*hoo 7

您正在使用存储文件夹,但默认情况下该路径来自公共目录,因此您需要使用 ../
Try像这样

$file=fopen('../storage/app/test.json','w');
fwrite($file,json_encode($line));
fclose($file);
Run Code Online (Sandbox Code Playgroud)