FuelPHPのUploadクラスの使い方

FuelPHPのUploadクラスの使い方をまとめてみました。
ちょっとクセがある感じなので、自分の使い方が正しいのかは不明です。

まずは、簡単にUpload処理を行うために下記のようなcontrollerを用意します。

アップロード処理のサンプル

[php]
false,
‘langCallback’ => null,
‘moveCallback’ => null,
// validation settings
‘max_size’ => 0,
‘max_length’ => 0,
‘ext_whitelist’ => array(),
‘ext_blacklist’ => array(),
‘type_whitelist’ => array(),
‘type_blacklist’ => array(),
‘mime_whitelist’ => array(),
‘mime_blacklist’ => array(),
// file settings
‘prefix’ => ”,
‘suffix’ => ”,
‘extension’ => ”,
‘randomize’ => false,
‘normalize’ => false,
‘normalize_separator’ => ‘_’,
‘change_case’ => false,
// save-to-disk settings
‘path’ => ”,
‘create_path’ => true,
‘path_chmod’ => 0777,
‘file_chmod’ => 0666,
‘auto_rename’ => true,
‘overwrite’ => false,
);
[/php]

composerでバージョンを上げると、今まであった「new_name」のプロパティがなくなっており、アップロードした際のファイル名の変更がUploadクラスだけでは完結できなくなっていると思われます。

そのため、ここではFuelPHPのFileクラスを利用しアップロードされた一時ファイルに対しFile::rename()を利用し、ファイル名を変えつつリネーム(コピー)する処理でごまかしています。

総括

これが正しい処理か?と言われると自信がありませんが、やりかたの1例としてあげておきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です