Laravelを使うとファイルシステム周りに惑わされる

とても面倒くさい

Illuminate\Http\UploadedFile

getClientOriginalName() アップロードしたファイル名
getPathname() アップロードしたファイルの一時ファイル置き場。PHPの素のやつ。/tmp/phpHOGEみたいなファイルパスのやつ。

hashName()

アップロードした時の一時ファイル名。一意な値?UploadedFileが勝手につける名前。拡張子付き

get()

ファイルの中身

 

 

StorageファサードとFileファサード

readouble.com

ファサードクラスリファレンスにファサードの実体があるので、詳しくはコードを読め

両者ともappendメソッドを持ってるが、詳細が違う(Fileはfile_put_contentsだが、Storageは与えられたクラスによって挙動が変わる)

 

 

分割されたバイナリファイルを合体させたい

特定の場所に置いてあるファイルに上書きする前提

$filePath = Storage::disk('hoge')->path('ファイル名');
$writeSize = File::append($filePath'バイナリの中身');