Php 如何在yii中验证上载的文件大小

Php 如何在yii中验证上载的文件大小,php,yii,filesize,Php,Yii,Filesize,我有一个允许用户上传文件的网站,但我想在将文件保存到服务器之前设置文件的最小大小。假设要上传的最小文件大小为50KB。 如何用Yii写剧本?在控制器或模型中,我应该将函数放在哪里?是的,实际上没有必要,只要文件上传到服务器,就会创建一个全局变量 您必须添加一个接受文件的窗体 <form enctype="multipart/form-data"></form> <input type="file" name="file"> 在您的操作中,检查上载的文件

我有一个允许用户上传文件的网站,但我想在将文件保存到服务器之前设置文件的最小大小。假设要上传的最小文件大小为50KB。
如何用Yii写剧本?在控制器或模型中,我应该将函数放在哪里?

是的,实际上没有必要,只要文件上传到服务器,就会创建一个全局变量

您必须添加一个接受文件的窗体

<form enctype="multipart/form-data"></form>
<input type="file" name="file">

在您的操作中,检查上载的文件

$name = $_FILES['file']['name']; //name of the file
$size = $_FILES['file']['size']; //size of the file in bytes

if($size < $minSize)
{
    //Your code here
}

else
{
    //When file does not meet the minimun.
    //Your code here
}
$name=$\u文件['file']['name']//文件名
$size=$_文件['file']['size']//文件的大小(以字节为单位)
如果($size<$minSize)
{
//你的代码在这里
}
其他的
{
//当文件不满足最小值时。
//你的代码在这里
}

yii确实没有必要,只要文件上传到服务器,就会创建一个全局变量

您必须添加一个接受文件的窗体

<form enctype="multipart/form-data"></form>
<input type="file" name="file">

在您的操作中,检查上载的文件

$name = $_FILES['file']['name']; //name of the file
$size = $_FILES['file']['size']; //size of the file in bytes

if($size < $minSize)
{
    //Your code here
}

else
{
    //When file does not meet the minimun.
    //Your code here
}
$name=$\u文件['file']['name']//文件名
$size=$_文件['file']['size']//文件的大小(以字节为单位)
如果($size<$minSize)
{
//你的代码在这里
}
其他的
{
//当文件不满足最小值时。
//你的代码在这里
}

文件验证程序具有minSize参数

您可以将验证规则修改为smth,如下所示:

array('yourfile','file', 'types'=>'jpg, gif, png, jpeg', 'minSize'=>1024 * 1024 * 50, 'tooLarge'=>'File has to be bigger than 50MB')

FileValidator具有minSize参数

您可以将验证规则修改为smth,如下所示:

array('yourfile','file', 'types'=>'jpg, gif, png, jpeg', 'minSize'=>1024 * 1024 * 50, 'tooLarge'=>'File has to be bigger than 50MB')
如果你用yii

array('filename','file', 'types'=>'jpg, png', 'minSize'=>1024 * 1024 * 10, 'tooLarge'=>'Not more than 10MB')
如果您使用jquery,那么获得当前大小并进行验证会更好

$("#imageInput").change(function () 
        { 
            var iSize = ($("#imageInput")[0].files[0].size / 1024); 
            if(iSize>1024 * 1024 * 10)
            {
                 $("#sizemb").html( iSize + "is greater than 10mb"); 
            }
            else if (iSize / 1024 > 1) 
            { 
               if (((iSize / 1024) / 1024) > 1) 
               { 
                   iSize = (Math.round(((iSize / 1024) / 1024) * 100) / 100);
                   $("#sizemb").html( iSize + "Gb"); 
               }
               else
               { 
                   iSize = (Math.round((iSize / 1024) * 100) / 100)
                   $("#sizemb").html( iSize + "Mb"); 
               } 
            } 
            else 
            {
               iSize = (Math.round(iSize * 100) / 100)
               $("#sizemb").html( iSize  + "kb"); 
            }
        });
如果你用yii

array('filename','file', 'types'=>'jpg, png', 'minSize'=>1024 * 1024 * 10, 'tooLarge'=>'Not more than 10MB')
如果您使用jquery,那么获得当前大小并进行验证会更好

$("#imageInput").change(function () 
        { 
            var iSize = ($("#imageInput")[0].files[0].size / 1024); 
            if(iSize>1024 * 1024 * 10)
            {
                 $("#sizemb").html( iSize + "is greater than 10mb"); 
            }
            else if (iSize / 1024 > 1) 
            { 
               if (((iSize / 1024) / 1024) > 1) 
               { 
                   iSize = (Math.round(((iSize / 1024) / 1024) * 100) / 100);
                   $("#sizemb").html( iSize + "Gb"); 
               }
               else
               { 
                   iSize = (Math.round((iSize / 1024) * 100) / 100)
                   $("#sizemb").html( iSize + "Mb"); 
               } 
            } 
            else 
            {
               iSize = (Math.round(iSize * 100) / 100)
               $("#sizemb").html( iSize  + "kb"); 
            }
        });

if(filesize($filepath)在你的控制器的操作中:if($\u FILES[“FileInput”][“size”]>5242880){die(“文件大小太大!”);}
if(filesize($filepath)在你的控制器的操作中:if($\u FILES[“FileInput”][“size”]>5242880){die(“文件大小太大!”);                 }