ホームページ > 記事 > PHPフレームワーク > laravelシステムに付属しているファイルアップロード機能
次のLaravelのチュートリアルコラムでは、laravelシステムに付属しているファイルアップロード機能を紹介しますので、困っている友人の役に立てれば幸いです。
ファイルをアップロードする機能については、言うのは難しいのですが、実際にはすべてカプセル化されているので、それほど難しいことではありません。言うのは難しいことではありませんが、さまざまな構成が時々頭を悩ませることがあります。今日はlaravelのアップロード機能の導入についてお話します。
コマンドを直接呼び出して、composer から laravel フレームワークをダウンロードし、blog という名前を付けます (これはカジュアルです)
ファイル blog->config->filesystems.php を入力します。ディスク構成があります。
ディスク構成アイテムの合計呼び出しについて簡単に説明します。これは後で使用します。パブリック呼び出しメソッドと考えると簡単に理解できます。プロジェクトにはさまざまな保存方法や保存場所が存在する可能性があるため、
<p class="container">
<p class="panel-heading">上传文件</p>
<form class="form-horizontal" method="POST" action="" enctype="multipart/form-data">
{{ csrf_field() }}
<label for="file">选择文件</label>
<input id="file" type="file" class="form-control" name="source" required>
<button type="submit" class="btn btn-primary">确定</button>
</form>
</p>
コードの赤い部分を追加する必要があります。追加しない場合は、次のコードを追加します。 php ステートメントのコード検証は実行できません
バックエンド コード
3
public function upload(Request $request){ if ($request->isMethod('POST')) { //判断是否是POST上传,应该不会有人用get吧,恩,不会的 //在源生的php代码中是使用$_FILE来查看上传文件的属性 //但是在laravel里面有更好的封装好的方法,就是下面这个 //显示的属性更多 $fileCharater = $request->file('source'); if ($fileCharater->isValid()) { //括号里面的是必须加的哦 //如果括号里面的不加上的话,下面的方法也无法调用的 //获取文件的扩展名 $ext = $fileCharater->getClientOriginalExtension(); //获取文件的绝对路径 $path = $fileCharater->getRealPath(); //定义文件名 $filename = date('Y-m-d-h-i-s').'.'.$ext; //存储文件。disk里面的public。总的来说,就是调用disk模块里的public配置 Storage::disk('public')->put($filename, file_get_contents($path)); } } return view('upload'); }エディターは間違えて笑わせてしまうのではないかと心配しながら、作業中はタイプしていました。最後に、ファイルは正常にアップロードされました。
以上がlaravelシステムに付属しているファイルアップロード機能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。