PHP实现上传图片到 zimg 服务器

关于zimg的了解


最近我们项目需要一台图片服务器存储用户上传的图片,我们使用 zimg 处理和存储图片,下面简单介绍一下如何使用 PHP 上传图片到 zimg,并获取相应图片的返回信息

其实这是转载 啦啦啦 搬运工一枚,很有借鉴价值哦

php代码:

 

    $zimg_domain = C("ZIMG_DOMAIN") ; //图片服务器域名

    $zimg_upload_url = $zimg_domain . "upload"; //上传地址


    $ext = substr($imgurl, strrpos($imgurl, ".")+1);

    $realpath = realpath(mb_convert_encoding($imgurl, 'GBK', 'utf8'));


    // 上传图片到zimg图片存储服务

    $ch = curl_init();


    // 关键在这里!

    $post_data = file_get_contents($realpath); // raw_post方式

    // 如果是是一个数组,则content_type自动为multipart/form-data

    //        $post_data = array(

    //            'file' => "@$realpath"

    //        );

    $headers = array();

    $headers[] = 'Content-Type:'.$ext; // 还有这里!


    curl_setopt($ch, CURLOPT_URL, $zimg_upload_url);

    curl_setopt($ch, CURLOPT_HEADER, false);

    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    //启用时会发送一个常规的POST请求,类型为:application/x-www-form-urlencoded,就像表单提交的一样。

    curl_setopt($ch, CURLOPT_POST, true);

    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);

    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);


    $info = curl_exec($ch);

    curl_close($ch);


    $json = json_decode($info, true);

    $signature = $json['info']['md5'];


    $imgurl = $zimg_domain . $signature;

    return array('imgurl'=>$imgurl,'imgcode'=>$signature);




以上是把图片上传到图片服务器的源码,有需要的朋友可以看看.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值