PHP上传文件

该文章展示了如何使用PHP编写一个图片上传的API,包括生成随机文件名、创建日期文件夹、检查图片类型以及将上传的图片移动到服务器的指定位置。代码中还包含了错误处理和返回上传结果的JSON格式。
摘要由CSDN通过智能技术生成

对图片上传位置的展示

后端文件写在api文件下的demo中

demo.php代码展示

<?php 
    //图片文件的生成
    $savename = date('YmdHis',time()).mt_rand(0,9999);//生成随机数作为图片名称
    //由于当前文件在api目录中,则需要返回上一个页面中的image文件夹中的日期文件夹
    $imgdirs = "../image/".date('Y-m-d',time()).'/';//文件夹名称(/image/日期/)
    mkdirs($imgdirs);//调用mkdirs方法,创建图片存放的文件夹
    //获取图片文件的名字
    $fileName = $_FILES["file"]["name"];
    // //获取图片类型
    $file_type = $_FILES["file"]["type"];
    $type = '';
    //判断是否是图片信息
    switch ($file_type) {
    case 'image/png':
        $type = '.png';
        break;
    case 'image/gif':
        $type = '.gif';
        break;
    case 'image/jpeg':
        $type = '.jpg';
        break;
    }
    //图片保存的路径
    $savepath = $imgdirs.$savename.$type; //../image/当前日期/图片名称/图片类型
    //生成一个URL获取图片的地址,为了找到图片链接:例如http://自己服务器域名或IP地址/服务器中的文件/image文件夹/当前日期文件夹/图片,保存图片的路径需要去掉../
    $url = "http://自己服务器域名或IP地址/feiyoute" . str_replace('..','',$savepath); 
    // 临时文件$_FILES["file"]["tmp_name"]移动到指定文件夹(../image/当前日期)
    $rs = move_uploaded_file($_FILES["file"]["tmp_name"],$savepath);
    if($rs) {//图片正常移动到指定文件夹下
        $data['url'] = "{$url}";
        $data["alt"] = $fileName;
        $data["href"] = "{$url}";
        $result=array('errno'=>0,'data'=>array($data));//输出特定样式
        echo json_encode($result);
        } 
    else {
        $result=array('errno'=>1,'message'=>'失败信息');
        echo json_encode($result);
    }
    //创建文件夹 权限问题
    function mkdirs($dir, $mode = 0777){
        if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE;
        if (!mkdirs(dirname($dir), $mode)) return FALSE;
        return @mkdir($dir, $mode);
    }
?>

在postapi中上传图片photo.png的测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值