一、如何把字符串"…/public/uploads/mednews/2019/09/24/5d89926c0de9d.png" 中的字符 “…/public/” 替换为 "当前主机的ip?
$photo=str_replace("../public",$this->request->ip(),$photo);
结果为
127.0.0.1/uploads/mednews/2019/09/24/5d899d02007a1.jpg
二、将上传的图片保存到一个数组中;读取时以“;”来分割,并保存到数组中
127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png;127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png;127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png;127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png
截取以分号隔开的图片路径
$imgs = explode(";",$res['imgs']);
结果为
array([
127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png,
127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png,
127.0.0.1/uploads/mednews/2019/09/24/5d89926c0de9d.png
])
三、p5图片上传接口
public function uploadImg(){
//接收文件类型,并分文件夹保存
$type=input("param.type");
//接收上传的文件
$file = $this->request->file('file');
if(!empty($file)){
//图片存的路径
$imgUrl= '../public/uploads'.'/'. $type.'/' . date("Y/m/d");
// 移动到框架应用根目录/public/uploads/ 目录下
$info = $file->validate(['size'=>1048576,'ext'=>'jpg,png,gif'])->rule('uniqid')->move($imgUrl);
$error = $file->getError();
//验证文件后缀后大小
if(!empty($error)){
dump($error);exit;
}
if($info){
// 成功上传后 获取上传信息
//获取图片的名字
$imgName = $info->getFilename();
//获取图片的路径
$photo=$imgUrl . "/" . $imgName;
}else{
// 上传失败获取错误信息
$file->getError();
}
}else{
$photo = '';
}
if($photo !== ''){
$photo=str_replace("../public/",$this->request->ip(),$photo);
return ['code'=>1,'msg'=>'成功','photo'=>$photo];
}else{
return ['code'=>404,'msg'=>'失败'];
}
}