Php fopen在内核命令中失败,但在控制器Laravel中未失败

Php fopen在内核命令中失败,但在控制器Laravel中未失败,php,laravel-5,Php,Laravel 5,我正在使用fopen生成csv文件。该函数在测试控制器中按预期工作,但当我移动到控制台/命令文件时,它失败,并显示“未能打开流:没有这样的文件或目录” 这是fopen线 $fp = fopen('dataFiles/dataFile_'.date('Ymd').'.csv', 'w'); 我已尝试将url声明更改为 $fp = fopen('/dataFiles/dataFile_'.date('Ymd').'.csv', 'w'); 没有骰子。dataFiles文件夹位于我的项目公用目录中

我正在使用fopen生成csv文件。该函数在测试控制器中按预期工作,但当我移动到控制台/命令文件时,它失败,并显示“未能打开流:没有这样的文件或目录”

这是fopen线

$fp = fopen('dataFiles/dataFile_'.date('Ymd').'.csv', 'w');
我已尝试将url声明更改为

$fp = fopen('/dataFiles/dataFile_'.date('Ymd').'.csv', 'w');
没有骰子。dataFiles文件夹位于我的项目公用目录中

这里可能有什么问题

这是一个5.3项目


谢谢

必须使用
公用路径()
指定公用文件夹位置。否则,文件位置将取自现有文件夹。在您的示例中,它检查文件是否存在于Console文件夹中,在第二个示例中,它从项目根目录获取文件路径

$fp = fopen(public_path('dataFiles/dataFile_'.date('Ymd').'.csv', 'w'));
我有一个建议给你。如果您不打算公开此文件,则应将其放在存储文件夹中。那是存放这类文件的地方


好极了。我认为这和路径有关。另外,存储建议为+1。谢谢