2010-10-02 103 views
1

如何在調整大小之前在Kohana 3中驗證圖像屬性(高度,寬度)? 或者我如何才能使用圖像調整大小,只有當我的圖像不小於我需要的大小?如何檢查圖像屬性(大小)?

我想要做的事情: 在頭像上傳期間我必須調整圖片大小,如果它更大,我想要的。 或採取措施禁止上傳更大的頭像。

現在我有這樣的規則:

public function avatar_validate($files) 
{ 
    return Validate::factory($files) 
     ->rules('avatar', array(
      'Upload::valid' => NULL, 
      'Upload::type' => array(array('jpg','png','gif','bmp','gif')), 
      'Upload::size' => array('3M') 
           ) 
           ); 
} 

回答

1

驗證(類型,文件大小,等等)之後,在與圖像模塊控制器加載圖像。

$image = new Image($file['tmp_name']); 
if ($image->width > 800 OR $image->height > 600) 
{ 
    $image->resize(800, 600, null); 
    $image->save('path/'.$file['name']); 
} 
else 
{ 
    move_uploaded_file($file['tmp_name'], 'path/'.$file['name']); 
}