php app接口 图片上传_app中用thinkphp 如何做一个上传图片 的 接口

"这篇博客介绍了如何使用ThinkPHP框架编写一个iOS应用接口,用于实名认证时上传图片。代码示例包括了base64编码和传统文件上传两种方式,并提供了错误处理。接口使用了ThinkUpload类来处理文件上传,确保上传到指定目录并返回上传成功的URL。"
摘要由CSDN通过智能技术生成

最近一个app IOS的 用thinkphp写接口 实名认证中 必须要上传一张自己的图片

如何用thinkphp 写上传图片的接口 有没有源码 请注明每步操作 万分感谢!!

//上传图片方法 可以放在父类以便以后继承直接调用

//两种上传方式一种是file另一种是base64

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());

}

}

app post上来

然后php中$_FILES接收,没有什么特殊的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值