最近一个app IOS的 用thinkphp写接口 实名认证中 必须要上传一张自己的图片
如何用thinkphp 写上传图片的接口 有没有源码 请注明每步操作 万分感谢!!
最近一个app IOS的 用thinkphp写接口 实名认证中 必须要上传一张自己的图片
如何用thinkphp 写上传图片的接口 有没有源码 请注明每步操作 万分感谢!!
//上传图片方法 可以放在父类以便以后继承直接调用
//两种上传方式一种是file另一种是base64
<code>public function picupload() { if (!IS_POST) { die('<form method="post" enctype="multipart/form-data"> smeta(base64) :<input name="smeta"><br> smeta :<input name="smeta" type="file"><br> <input type="submit"> </form>'); } //base64上传方式(主要是为了处理微信不支持 input file) $smeta = $_POST['smeta']; if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $smeta, $result)) {//base64上传 $data = base64_decode(str_replace($result[1], '', $smeta)); $dataname = './Uploads/' . uniqid() . '.' . $result[2]; if (file_put_contents($dataname, $data)) { $this->ajaxoutput($dataname); //返回数据结构自行封装 }else{ $this->ajaxerror('上传出错'); } } //处理file上传 这里是调用thinkphp封装好\Think\Upload这个上传类 可以学习写thinkphp官方这个类是怎么写的 $config = array( 'rootPath' => './Uploads/', 'savePath' => '', 'maxSize' => 11048576, 'saveName' => array('uniqid', ''), 'exts' => array('jpg', 'gif', 'png', 'jpeg'), 'autoSub' => false, ); $upload = new \Think\Upload($config);// $info = $upload->upload(); //开始上传 if ($info) { //上传成功 $first = array_shift($info); if (!empty($first['url'])) { $url = $first['url']; } else { $url = C("TMPL_PARSE_STRING.__UPLOAD__") . $first['savename']; } $this->ajaxoutput($url); } else { //上传失败,返回错误 $this->ajaxerror($upload->getError()); } }</code>
app post上来
然后php中$_FILES接收,没有什么特殊的