首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Kohana 3.2 文件上傳驗證規則寫法:合併 $_POST 與 $_FILES 統一驗證

     編輯:PHP 相關知識

Kohana 驗證類進階用法:表單與文件聯合驗證

基於 Kohana 3.2.0 版本實測。官方文檔中文件上傳驗證示例為:

$array->rule('file', 'Upload::type', array(array('jpg', 'png', 'gif')));

但實際開發中常需同時驗證表單字段與上傳文件,分別 new Validation($_POST) 和 new Validation($_FILES) 雖可行但略顯繁瑣。利用 array_merge 合併後一次性驗證更優雅:

合併驗證實戰代碼

<?php
$post = new Validation(array_merge($_POST, $_FILES));

// 表單字段驗證(常規寫法)
$post->rule('username', 'not_empty')
      ->rule('email', 'email');

// 文件上傳驗證(關鍵點)
$post->rule('img', 'not_empty')
      ->rule('img', 'Upload::type', array(':value', array('jpg', 'png', 'gif')))
      ->rule('img', 'Upload::size', array(':value', '1M'));

關鍵參數解析

  • img:對應前端 <input type="file" name="img"> 的 name 屬性(非 id)
  • :value:Kohana 驗證系統的佔位符,自動傳入當前字段值
  • Upload::type:驗證 MIME 類型,第二參數為允許的擴展名數組
  • Upload::size:驗證文件大小,支援 1M、500K 等格式

版本提示:本文基於 Kohana 3.2.0,其他版本語法可能有差異,請參考對應版本文檔調整。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved