如何在 yii 1 中实现对 moveiploadfile(大小和类型) 的验证

How to implement validation to moveiploadfile(size and type) in yii 1

我的控制器中有以下代码:

if(move_uploaded_file($_FILES[$key]['tmp_name'], $name )) {
    echo 'Success';
} else {
    echo 'fail';
}

我需要对上传文件的大小和类型进行限制。 用户不应上传大于 2 兆字节的文件,而应仅上传 PDF 文档。如果用户不执行这些验证规则,它应该显示错误消息。我该怎么做?

在上传代码之前试试这个:

$filename=$_FILES['file']['name'];
//For size
if($_FILES["Upload"]["size"]>20000000) //2 mb
    {
    echo "File size should be less than 2MB";   
    }
// for extention
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);
if($ext=='pdf' )
{
echo "write the code to upload file";
}
else
{
echo "Only jpg or gif file is allowed";
}

希望对您有所帮助!!!

最好的方法是使用 Yii 验证规则。

  1. 添加rule in the model.
  2. 为规则设置 maxSize and types 设置。
  3. Handle the file upload 在控制器中。