<< Piece_Rightユーザーズマニュアル / フィルタ一覧

NoFile2NULLフィルタ

ファイルアップロード時における、未アップロード状態を明示的なNULL値に変換します。

PHPにおけるファイルアップロード処理においては、ファイルアップロードのリクエストが行われると$_FILESグローバル変数へ、HTML上で指定されたリクエスト名をもつ連想配列が自動的に格納されます。連想配列内にはファイル名やファイルサイズなどの情報が特定の要素名によって準備されることになります。
ここで仮にHTML上でファイルが指定されぬままリクエストが行われた場合は、ファイルが指定されていないことを指すエラーフラグが格納された連想配列が作成されることとなります。

NoFile2NULLフィルタは、このファイルの未アップロード状態をチェックすると共に、作成される連想配列を強制的にNULL値に変換します。これによりPiece_Rightバリデータにおけるフィールドに対してのrequiredルールを正しく利用することができるようになります。(requiredルールは、対象フィールドの値が連想配列である場合TRUE判定――妥当性に問題なしとなります。)

なお、ファイルアップロード処理に関する詳細情報は、以下のPHPマニュアルもあわせて確認してください。

PHPマニュアル: ファイルアップロードの処理

使用例

ファイル記述例

- name: uploadFile
  required:
    message: ファイルを指定してください。
  filter: 
     - NoFile2NULL
  validator:
    - name: File
      rule:
        minSize: 0
        maxSize: 1048576
      message: ファイル容量は1MBまでです。

実行結果

ユーザによってHTML上でファイルが指定されなかった場合uploadFileフィールドはNULLに変換され、requiredルールにヒットすることになります。正しくファイルが指定されていた場合はフィルタ処理は実施されません。


<< Piece_Rightユーザーズマニュアル / フィルタ一覧

ユーザコメント

Error: Failed to load processor AddComment
No macro or processor named 'AddComment' found