PHP上传文件
admin
2023-06-16 17:21:57
0

up.php上传文件

 
 
 
 
上传v0.1 - 紫游
 
 
上传默认2M  
根据大小命名+原始名称,覆盖文件。 
类型"jpg","png","ico","bmp","gif","tif","tga","txt","zip","rar","7z","gz","mp3","wav","m4a","mp4","3gp" 
 

请选择上传的文件 




 
//file_uploads = On ;
//打开文件上传选项 
//upload_max_filesize = 20M ;
//上传文件上限 
//如果要上传比较大的文件,必须把服务器缓存上限调大,把脚本最大执行时间变长 
//post_max_size = 20M ;post上限 
//max_execution_time = 1800 ; 脚本最大执行时间 
//max_input_time = 1800 ; 脚本请求解析的最大时间
//memory_limit = 128M ;(128MB)内存上限



//包含端口号的完整地址
$urlduankou = 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; 

//只取路径
$urllujing='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]; 
$urllujing1 =  dirname($urllujing);

//取服务器IP端口
$SERVERIPport = $_SERVER["SERVER_ADDR"].':'.$_SERVER["SERVER_PORT"]; 

//文件存储路径
$file_path="upload/";
//664权限为文件属主和属组用户可读和写,其他用户只读。
if(is_dir($file_path)!=TRUE) mkdir($file_path,0664) ;
//定义允许上传的文件扩展名
$ext_arr = array("jpg","png","ico","bmp","gif","tif","tga","txt","zip","rar","7z","gz","mp3","wav","m4a","mp4","3gp");

if (empty($_FILES) === false) {
    //判断检查
    if($_FILES['file']['size'] > 2097152){
        exit("对不起,您上传的照片超过了2M=2097152。");
    }
    if($_FILES["file"]["error"] > 0){
        exit("错误:".$_FILES["file"]["error"]);
        //值:0; 没有错误发生,文件上传成功。   
        //值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。   
        //值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。   
        //值:3; 文件只有部分被上传。   
        //值:4; 没有文件被上传。
    }
    //上传的文件名名称
    $FILESname = $_FILES["file"]["name"];
    //文件字节大小
    $FILESsize = $_FILES['file']['size'];

//echo "名称: " . $_FILES["file"]["name"] . "";
//echo "类型: " . $_FILES["file"]["type"] . "";
//echo "大小: " . ($_FILES["file"]["size"] / 1024) . " Kb";
//echo "临时名称: " . $_FILES["file"]["tmp_name"]." ";

    //获得文件扩展名
    $temp_arr = explode(".", $FILESname);
    $file_ext = array_pop($temp_arr);
    $file_ext = trim($file_ext);
    $file_ext = strtolower($file_ext);
//echo $FILESsize." ";
//echo $file_ext." ";
    //检查扩展名
    if (in_array($file_ext, $ext_arr) === false) {
        exit("上传的文件类型不支持。");
    }
    //以时间戳重命名文件
    $new_name = time().".".$file_ext;
    //根据大小加名称
    $size_name = $FILESsize."_".$FILESname;
    //将文件移动到存储目录下
    //move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $new_name);
    move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $size_name);
    //向数据表写入文件存储信息以便管理
    echo "\n文件上传成功!".$SERVERIPport.""," \n";
    echo 'URL:'.$urllujing1."/".$file_path.$size_name.'';  
    exit;
} else {
    echo "上传文件不正确,请检查。";
}

?>


相关内容

热门资讯

AI支付时代要来了吗?支付宝A... 【大河财立方 记者 杨霄 王宇】5月26日,在支付宝AI支付生态大会上,支付宝宣布,“AI支付”已完...
毫厘间的山河:0.001%背后... 元素周期表的版图上,锌,是一块古老而平凡的疆域。但当它的纯度跃升至99.998%时,这块金属便被赋予...
朝鲜进行新型武器系统试射 当地时间5月26日,朝鲜导弹总局和国防科学院进行轻型多用途导弹发射系统和多管战术巡航导弹武器系统试验...
原创 华... 华为各大产品全面发展,而且是多系列多版本,其中手机/笔记本均拥有4个系列,平板/手表均拥有6个系列,...
俄法院裁定:立即赔偿俄约200... △俄罗斯中央银行(资料图)当地时间5月26日,俄罗斯莫斯科仲裁法院批准俄央行的申请,将对欧洲清算银行...
特朗普:内阁会议将由戴维营改至... 当地时间5月26日,美国总统特朗普在社交平台发文称,由于预计次日天气状况不佳,原定在戴维营举行的内阁...
江苏省内首次!变电站装上了“智... 扬子晚报网5月26日讯(记者 刘丽媛)5月25日,江苏南京220千伏光华变电站完成一项特殊改造——在...
NbS暑期学校广州开班!国内外... 南都讯 记者莫郅骅 5月26日,2026基于自然的解决方案(NbS)暑期学校在广州开班。该活动由自然...
一场训练营,孵化112个创新项... AI赋能民生、科创点亮青春! 从课堂灵感孵化的音乐记忆AI工具 到深耕水产行业的智能经营助手 一批贴...
潮评丨原创精神无法“一键生成” 潮新闻客户端 评论员 高路 图源:央视新闻。 继“查重”以后,检测AIGC(人工智能生成内容)率也...