環境:Windows10,XAMPP,HeidiSQL
laravelでcsvファイルを取込コマンドプロンプトで出力したい
ロジックは出来たと思うのですが、fopenが上手くできません。
現状、出力対象ファイルはstorage/app/publicに格納しております。
<?php namespace App\Console\Commands; use Illuminate\Console\Command; use Illuminate\Support\Facades\Storage; class Output extends Command { /** * The name and signature of the console command. * * @var string */ protected $signature = 'command:output'; /** * The console command description. * * @var string */ protected $description = 'テスト1'; /** * Create a new command instance. * * @return void */ public function __construct() { parent::__construct(); } /** * Execute the console command. * * @return int */ public function handle() { $content = Storage::get('/public/study01.csv'); $fp = fopen($content, 'r'); while(($line = fgets($fp)) !== false){ echo $line.php_EOL; echo "--------------\n"; } fclose($fp); return 0; } }
コマンドプロンプトでphp artisan command:outputとたたくと
現状エラー文
ErrorException
fopen(2020/1/1,100
2020/2/1,200
2020/3/1,500
2020/4/1,600
2020/5/1,700
2020/6/1,200
2020/7/1,900
): failed to open stream: No such file or directory
at C:\Users\USER\fusionsystem\app\Console\Commands\Output.php:43
39| public function handle()
40| {
41|
42| $content = Storage::get('/public/study01.csv');
43| $fp = fopen($content, 'r');
44| while(($line = fgets($fp)) !== false){ 45| echo $line.php_EOL; 46| echo "--------------\n"; 47| }
1 C:\Users\USER\fusionsystem\app\Console\Commands\Output.php:43
fopen("2020/1/1,100
2020/2/1,200
2020/3/1,500
2020/4/1,600
2020/5/1,700
2020/6/1,200
2020/7/1,900
", "r")
2 C:\Users\USER\fusionsystem\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:36
App\Console\Commands\Output::handle()
ファイルの中身はででいるのになぜエラーになってしまっているのでしょうか?
以上、宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。