Kohanaフレームワークのアップロードファイル検証ルールの記述例、
まず最初に、私はバージョン ko3.2.0 を使用していることを述べておきます。
kohana の検証は、各機能のコメントに例があるため、使用する学生にはあまり理解されていません。今日私が遭遇した状況は画像のアップロードを検証することであり、kohana の例は次のようなものでした。
コードをコピーします コードは次のとおりです:
$array->rule('file', 'Upload::type', array(array('jpg', 'png', 'gif') ));
これ自体には問題はありませんが、実際のアプリケーションでは常に少し不便です。なぜなら、後続の処理に渡すときに、画像のアップロードだけでなく、フォームの特定のフィールドも検証する必要があるからです。確認されます
通常は次のように書きます
コードをコピーします コードは次のとおりです:
$post = 新しい検証($_POST);
$file = 新しい検証($_FILES);
このように書いても何も問題はありませんし、検証するときも例に従って書けばOKですが、newを2回使うのはちょっと違和感がありますし、$_POSTと$_FILESが両方とも配列であることもわかっていますよね。はい、もちろん、最初にこれらを大きな配列に変換する必要があります。
コードをコピーします コードは次のとおりです:
$post = new Validation(array_merge($_POST,$_FILES));//理解できない学生はarray_mergeをダウンロードしてください
重要な点はここです。検証フォームのフィールドの書き方は、画像のアップロード (またはその他のアップロード) の書き方が重要であることは誰もが知っています。
時間の関係で、コードに直接進みます。もちろん、興味のある学生はルールを直接試してみることもできます。
コードをコピーします
コードは次のとおりです:
$post->rule('img','not_empty')
->rule('img','Upload::type',array(':value',array('jpg','png','gif')))
->rule('img','Upload::size',array(':value','1M'));
PS: img は、フロントエンド フォームの input type="file" を持つコントロールの名前ですが、ID はバックエンドで見つかりません。
繰り返しになりますが、私はバージョン kohana 3.2.0 を使用しています。他のバージョンの場合は、記述の修正に注意してください。
http://www.bkjia.com/PHPjc/840641.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/840641.html技術記事 kohana フレームワークでファイルをアップロードするための検証ルールを記述する方法の例 まず、kohana の検証を使用する学生は、各関数のコメントに例が記載されているため、ko3.2.0 バージョンを使用していることを述べておきます。 ...