首页 电脑 电脑学堂 查看内容

PHP处理HTTP上传文件函数

2004-12-7 03:05 755 0

摘要: 转自:swords's blog 代码:<?php /** +-------------------------------------------------- |   ...
关键词: nbsp name uploadname file upfilename echo exit type size return

转自:swords's blog 代码:<?php /** +-------------------------------------------------- |   Function:_asUpFiles |   Author:   Arvan [2fs.cn] |   Action:  处理文件上传 |   Parameter: |   @param: $dir      -- 存放目录,最后不带"/" [字串] |   @param: $file_var -- 表单变量 [字串] |   @param: $max_size -- 设定最大上传值,以k为单位. [整数/浮点数] |   @param: $type     -- 限定后辍名(小写),多个用"/"隔开,不限定则留空 [字串] |   @param: $name     -- 上传后命名,留空则为原名,true为系统随机定名 [布林值] |   @return: |       上传成功的$dir之后文件名 |   @e.g. : |                _asUpFiles("file", "file", '', '', true); +-------------------------------------------------- */ function _asUpFiles($dir, $file_var, $max_size='', $type='', $name=false) {         if (!is_writeable($dir))         {                 echo $dir." Can't be written or doesn't exist.";                 exit();         }         $upfile     =& $_FILES["$file_var"];         $upfilename =  $upfile['name'];         if (!($upfilename===''))         {                 if (!is_uploaded_file($upfile['tmp_name']))                 {                         echo $upfilename." Can't be uploaded.";                         exit();                 }                 if ($max_size>0 && $upfile['size']/1024>$max_size)                 {                         echo 'The size of the file exceeds the limitative value.';                         exit();                 }                 $ext_name = strtolower(str_replace(".", "", strrchr($upfilename, ".")));                 if (!($type==='') && strpos($type, $ext_name)===false)                 {                         echo "Please upload the file of $type form.";                         exit();                 }                 $uploadname = $name ? md5(uniqid(rand())).".".$ext_name : $upfilename;                 if (!move_uploaded_file($upfile['tmp_name'], $dir."/".$uploadname))                 {                         echo "Possible file upload attack! Here's some debugging info:\n";                         print_r($_FILES);                         exit();                 }                 return $uploadname;         }         else         {                 return '';         } } ?>     
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部