投稿

ラベル(Upload)が付いた投稿を表示しています

【PHP】FuelPHPでファイルアップロード

FuelPHPでファイルをアップロードする方法をまとめます。 以下の公式ページを参考に実装しました。 http://fuelphp.jp/docs/1.8/classes/upload/usage.html 要件 inputタグで指定されたファイルをアップロードする ファイル名はハッシュ値に置き換える ファイルの最大サイズは1MB ファイル拡張子はjpeg, jpg, gif, pngのみ許可 エラーは発生した時点で例外とする 実装 フロント側 Submit form内に以下を追加します。 <input type="file" name="image" accept="image/*" /> サーバー側実装 モジュール定義 FuelPHPのコアライブラリを使用するので以下を追加します。 use \Fuel\Core\Upload; アクションの実装 // アップロードファイルの設定 Upload::process(array( 'path' => '/var/tmp', 'overwrite' => true, 'randomize' => true, 'max_size' => 1000000, 'ext_whitelist' => array( 'jpeg', 'jpg', 'gif', 'png' ) )); // アップロードファイルの検証と保存 if (Upload::is_valid()) { // 画像アップロード成功の場合、設定を元に保存 for($i = 0; $i < count(Upload::get_files()); $i++) { Upload::save($i); } } // ファイルアップロードエラー fo