程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> kohana框架上傳文件驗證規則寫法示例

kohana框架上傳文件驗證規則寫法示例

編輯:PHP綜合

先聲明下我用的是ko3.2.0版本.

kohana的驗證,用的同學們都少懂點,因為每個函數的注釋裡都會舉個例子.今天遇到的情況是驗證圖片上傳,kohana的例子是這個樣子的.
復制代碼 代碼如下:$array->rule('file', 'Upload::type', array(array('jpg', 'png', 'gif')));
這個本身沒有問題,但是呢,在實際的應用中總有點不方便,為什麼呢,因為傳到後面處理的時候,不僅要驗證圖片的上傳還要驗證form表單的某些字段.
一般我們會這樣寫
復制代碼 代碼如下:
$post = new Validation($_POST);
$file = new Validation($_FILES);
這樣寫也沒什麼問題,驗證的時候按例子寫也ok.但是覺得new2次有點怪怪的,而且我們也知道$_POST和$_FILES都是數組,可以一次驗麼?那肯定的,當然,我們得先把它們變成一個大的數組.這樣寫就OK.
復制代碼 代碼如下:
$post = new Validation(array_merge($_POST,$_FILES));//不明白的同學,度娘下array_merge
重點出場了,親們.大家都知道驗證form表單的字段寫法和合並前沒什麼區別,關鍵是這個圖片上傳(或是其他的用到upload)要怎麼寫.
好吧,時間關系直接上代碼,大家可以拿去直接用,當然有興趣的同學也可以試用rules.
復制代碼 代碼如下:
$post->rule('img','not_empty')
     ->rule('img','Upload::type',array(':value',array('jpg','png','gif')))
      ->rule('img','Upload::size',array(':value','1M'));
PS:img就是前台form表單中input type="file" 那個控件名稱啦,後台是找不到ID的.
再次聲明我用的kohana3.2.0版本,其它版本注意修改下寫法.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved