.wxml文件
<view class='img' bindtap="chooseimage">
<text style='float:left;' >图像</text>
<image src='{{userInfo.avatarUrl}}' class='avatar'></image>
<text class='href' style='margin-right:6%;margin-top:0;' >></text>
</view>
.js文件
// 图像上传
chooseimage: function () {
var that = this;
wx.chooseImage({
count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (e) {
// 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
that.setData({
tempFilePaths: e.tempFilePaths
})
var tempFilePaths = e.tempFilePaths
var url = app.globalData.url
wx.uploadFile({ //上传到服务器
url: url + 'user/upload', //仅为示例,非真实的接口地址
filePath: tempFilePaths[0],//文件地址
name: 'file',//文件name值
success: function (res) {
var info = res.data //接口返回的数据
that.setData({
tempFilePaths: info.domain_img_path,
avatarUrl : info.img_path
})
}
})
}
})
},
.php文件
// 上传图片
public function upload()
{
$file = request()->file('file');
if($file->isValid()){
$ext = $file->getClientOriginalExtension();//文件扩展名
$file_name = date("YmdHis",time()).'-'.uniqid().".".$ext;//保存的文件名
if(!in_array($ext,['jpg','jpeg','gif','png']) ) return response()->json(err('文件类型不是图片'));
//把临时文件移动到指定的位置,并重命名
$path = public_path().DIRECTORY_SEPARATOR.'uploads'.DIRECTORY_SEPARATOR.'wchat_img'.DIRECTORY_SEPARATOR.date('Y').DIRECTORY_SEPARATOR.date('m').DIRECTORY_SEPARATOR.date('d').DIRECTORY_SEPARATOR;
$bool = $file->move($path,$file_name);
if($bool){
$img_path = '/uploads/wchat_img/'.date('Y').'/'.date('m').'/'.date('d').'/'.$file_name;
$data = [
'domain_img_path'=>get_domain().$img_path,
'img_path'=>$img_path,
];
return response()->json(succ($data));
}else{
return response()->json(err("图片上传失败!"));
}
}else{
return response()->json(err("图片上传失败!"));
}
}
上一篇: 搭建Android客户端APP架构——《组件化技术》
下一篇: 状态栏相关