PHP上传文件

<?php


//定义上传的函数
//1.判定上传的文件是否成功至临时文件夹
//2,判断文件是否符合上传要求
//2.1 获得文件后缀名
//2.2 与规定后缀名比较  符合才上传
//3文件名字重命名
//3.1 以时间戳+6随机字符规则重命名
//4移动上传文件离开临时文件夹
//5 返回值,文件路径
//************************************************************************


//定义上传函数
//@param1  array $file ,通过post上传表单type=file中name的值,用$_FILES获得下标的数组
//返回值 return,成功返回一个完整URL,失败返回一个数组,第一个是FALSE ,第二个是失败信息

function upload($file){
//判断是否上传到临时文件夹
$errorinfo="";
switch ($file["error"]){
case 1:
$errorinfo = "上传的文件超过了服务器限制,最大值为:".ini_get("upload_max_filesize");
break;
case 2:
$errorinfo = "上传文件的大小超过了浏览器指定的值。";
break;
case 3:
$errorinfo = "文件只有部分被上传。";
break;
case 4:
$errorinfo = "没有文件被上传。";
break;
case 6:
$errorinfo = "找不到临时文件夹。";
break;
case 7:
$errorinfo = "文件写入失败。";
break;
}
if($errorinfo){
return array(false,$errorinfo);
}



//判断文件名是否符合要求
//获得文件后缀名


//1.定义允许上传的文件后缀名
$allow = array("png","jpeg","jpg","bmg","gif");
//获得文件后缀名
if(strrpos($file["name"],".")){
$lastname = substr($file["name"],strrpos($file["name"],".")+1);
}else{
return array(false,"文件URL存在问题");
}
//判定文件后缀名是否合法
if(!in_array($lastname,$allow)){
return array(false,"上传的文件不是支持的格式,支持的格式有".implode(",",$allow));
}
//随机起一个文件重命名
$newchar= randchar();
$newname = date("YmdHis").$newchar.".".$lastname;
//给临时文件重命名
// $file["name"]=$newname;
//移动上传文件离开临时文件夹
if(move_uploaded_file($file["tmp_name"],"f:/server/apache2.2/upload/".$newname)){
return "f:/server/apache2.2/upload/".$newname;
}else{
return array(false,"上传文件失败");
}



}
//sleep(10);



//定义一个函数获得后缀名,得到六个随机字符


function randchar(){
$str = "abcdefghijklmnopqrstuvwxyz";
$newchar = "";
for($i=1;$i<=6;$i++){
$newchar .= $str[mt_rand(0,25)];
}
return $newchar;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值