X  
登录

还没有账号?立即注册

忘记密码?
登陆
X  
注册

已经有账号?马上登陆

获取验证码
重新获取(60s)
立即注册
统计
  • 建站日期:2021-03-10
  • 文章总数:68 篇
  • 评论总数:76 条
  • 分类总数:13 个
  • 最后更新:11月1日
文章 源码分享

搜狗图床接口PHP源码案例分享

海盗船长
首页 源码分享 正文
广告

此源码转自唯爱网络,代码为PHP版本,调用搜狗图片上传。

此代码为PHP 类,请自行下载研究。

<?php
namespace apphomecontroller;
use apphomecontrollerCommon;
class Upload extends Common{
    public function _empty(){
         phpinfo();
    }
    public function image(){
        $fileExt=['gif','jpeg','jpg','png'];
        $MaxfileSize=1024*1024*2;
        if(isset($_FILES["file"])){
            $extension=pathinfo($_FILES["file"]['name'])['extension'];
            if($_FILES['file']['size']==0){
                $this->error('未知系统错误');
                return ;
            }
            if(!in_array($extension,$fileExt)){
                $this->error('只支JPG/GIF/PNG/JPEG文件');
                return ;
            }
            if($_FILES['file']['size']>=$MaxfileSize){
                $this->error('图片大小不能超过2MB');
                return ;
            }
            //临时文件保存目录
            $ImageCachePath=RUNTIME_PATH.'image/';//缓存路径
            if(!is_dir($ImageCachePath)){//不存在,创建文件夹
                mkdir($this->path, 777, true);
            }

            //生成新文件名
            $newFileName=$ImageCachePath.md5(rand(10000,99999)).'.'.$extension;
            //把文件存入临时目录
            if(!move_uploaded_file($_FILES["file"]["tmp_name"],$newFileName)){
                unlink($newFileName);
                $this->error('上传失败!代码100');
                return ;
            }
            //接口地址
            $UploadUrl = 'http://pic.sogou.com/ris_upload?r='.rand(10000,99999);
            //取出临时目录上传的文件
            $curlPost = array('pic_path'=>new CurlFile($newFileName));
            //模拟上传开始
            $ch = curl_init();  
            curl_setopt($ch, CURLOPT_URL, $UploadUrl);  
            // curl_setopt($ch, CURLOPT_HEADER, 1); 
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_POST, 1); //POST提交  
            curl_setopt($ch, CURLOPT_POSTFIELDS,$curlPost);  
            $data =curl_exec($ch);  
            curl_close($ch);
            //Urldecode解码字符串
            $NewData=urldecode($data);
            //匹配出结果
            preg_match('/query=(.*?)&oname/i',$NewData,$ImageUrl);
            if(!isset($ImageUrl[1])){
                unlink($newFileName);
                $this->error('上传失败!代码200');
                return ;
            }
            //返回Url,并且删除文件
            unlink($newFileName);
            $this->success('上传成功!',$ImageUrl[1]);
            return ;
        }
    }
}


版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!

-- 展开阅读全文 --
这篇文章最后更新于2018-11-16,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
范氏《补税传记》
« 上一篇
天若OCR文字识别 v5.0.0
下一篇 »

发表评论