php函数:PHP处理HTTP上传文件函数来源: 发布时间:星期六, 2009年9月12日 浏览:3次 评论:0
转自: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为系统随机定名 [布林值] | @: | 上传成功$dir的后文件名 | @e.g. : | _asUpFiles("file", "file", '', '', true); +-------------------------------------------------- */ function _asUpFiles($dir, $file_var, $max_size='', $type='', $name=false) { (!is_writeable($dir)) { echo $dir." Can't be written or doesn't exist."; exit; } $upfile =& $_FILES["$file_var"]; $upfilename = $upfile['name']; (!($upfilename='')) { (!is_uploaded_file($upfile['tmp_name'])) { echo $upfilename." Can't be uploaded."; exit; } ($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, "."))); (!($type='') && strpos($type, $ext_name)=false) { echo "Please upload the file of $type form."; exit; } $uploadname = $name ? md5(uniqid(rand)).".".$ext_name : $upfilename; (!move_uploaded_file($upfile['tmp_name'], $dir."/".$uploadname)) { echo "Possible file upload attack! Here's some debugging info:\n"; pr_r($_FILES); exit; } $uploadname; } { ''; } } ?> 0
相关文章读者评论发表评论 |