您的位置:

php限制文件类型,php禁止某些类型的上传文件

本文目录一览:

php如果不限制限制上传文件类型的话是不是任何类型都可以上传

理论上是。

但是如果是虚拟主机的话,可能会受到限制。应为虚拟主机的提供商为了安全。可以在php.ini文件中做限制。指定某些文件不准上传。

php怎样设置不允许哪些类型的文件上传,请给出代码?

$arrDenyExts = array("gif", "jpeg", "jpg", "png"); //不允许上传文件的格式

$temp = explode(".", $_FILES["file"]["name"]); //按点分割文件名,这里根据

//$temp = explode(".","d:\test.jpg"); //按点分割文件名

$extension = end($temp);//获取最后一个元素,确保是文件格式

$isAllow = true;

foreach($arrDenyExts as $key=$val) {

if($extension==$val) {

$isAllow=false;

break;

}

}

if($isAllow) {

echo "该文件格式允许上传br/";

} else {

echo "该文件格式不允许上传br/";

}

PHP文件上传类型限制

有两种方式可以给你解决,也可以几种方式同时使用

使用原本自带的函数getimagesize来判断是否是图片

使用获取上传文件头的方式来判断

$filename='xxxx.gif';

$file=fopen($filename,'rb');

$bin=fread($file,2); //只读取上传文件的头文信息的2个字节

fclose($file);

$strInfo=@unpack('c2chars',$bin);

$typeCode=intval($strInfo['chars1'].$strInfo['chars2']);

$fileType='';

switch ($typeCode){

case 7790:

$fileType='exe';

break;

case 7784:

$fileType='midi';

break;

case 8297:

$fileType='rar';

break;

case 255216:

$fileType='jpg';

break;

case 7173:

$fileType='gif';

break;

case 6677:

$fileType='bmp';

break;

case 13780:

$fileType='png';

break;

default:

echo 'unknown';

break;

}

echo '文件类型:'.$fileType.' 文件头信息:'.$typeCode;

希望对你有用!

如何修改PHP上传文件大小限制?

1. 在php.ini中,做如下修改:\x0d\x0a file_uploads = on\x0d\x0a upload_tmp_dir = /home/upload\x0d\x0a upload_max_filesize = 4000M\x0d\x0a post_max_size = 4000M\x0d\x0a 一般地,设置好上述四个参数后,上传8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:\x0d\x0a max_execution_time = 600\x0d\x0a max_input_time = 600\x0d\x0a memory_limit = 128M\x0d\x0a\x0d\x0a2. 在要确认上传的 里加入以下行:\x0d\x0a \x0d\x0a3. $_FILES["userfile"]["error"]返回值说明:\x0d\x0a $_FILES['teacher_pic']['error'] = 1 文件大小超过了PHP.ini中的文件限制\x0d\x0a $_FILES['teacher_pic']['error'] = 2 文件大小超过了浏览器限制\x0d\x0a $_FILES['teacher_pic']['error'] = 3 文件部分被上传\x0d\x0a $_FILES['teacher_pic']['error'] = 4 没有找到要上传的文件\x0d\x0a $_FILES['teacher_pic']['error'] = 5 服务器临时文件夹丢失\x0d\x0a $_FILES['teacher_pic']['error'] = 6 文件写入到临时文件夹出错\x0d\x0a $_FILES['teacher_pic']['error'] = -1 末充许的类型\x0d\x0a $_FILES['teacher_pic']['error'] = -2 文件过大,上传文件不能超过{$this-maxSize}个字节\x0d\x0a $_FILES['teacher_pic']['error'] = -3 上传失败\x0d\x0a $_FILES['teacher_pic']['error'] = -4 建立存放上传文件目录失败,请重新指定上传目录\x0d\x0a $_FILES['teacher_pic']['error'] = -5 必须指定上传文件的路径

PHP中怎么限定上传文件的格式为doc或者docx

function NewUploadFile( $jpg, $jpg_type, $fname, $jpg_size, $path )

{

global $strDownNotice9;

global $strDownNotice11;

if ( $jpg_size == 0 )

{

$arr[0] = "err";

$arr[1] = $strDownNotice9;

return $arr;

}

if ( substr( $fname, -4 ) != ".doc" substr( $fname, -5 ) != ".docx" )

{

$arr[0] = "err";

$arr[1] = $strDownNotice11;

return $arr;

}

$hzarr = explode( ".", $fname );

$num = sizeof( $hzarr ) - 1;

$UploadImage[2] = $hzarr[$num];

$timestr = time( );

$hz = substr( $fname, -4 );

$file_path = ROOTPATH.$path."/".$timestr.$hz;

$UploadImage[3] = $path."/".$timestr.$hz;

copy( $jpg, $file_path );

chmod( $file_path, 438 );

$UploadImage[0] = "OK";

$UploadImage[1] = "OK";

return $UploadImage;

}