用海豚框架(DolphinPHP)实现单/多图片上传时,如何获得图片路径

      用框架实现图片上传很简单,就不多说了,然后这个框架的实现机制是这样的,我们选择图片,点击上传,他会将图片保存在uploads下,以当天时间和随机字母作为图片名,然后在返回个数字,这个数字是这个图片的id,需要路径时,只需要通过这个id,使用get_file_path($id)就可以获取他的具体路径了,但是我们需要的图片路径一般是http://192.168.1.105/uploads/images/20190802/899cddd590ba116820b4e8227882709b.jpg,我们只需要拼接一下就好了,http://".$_SERVER['SERVER_NAME'].get_file_path($vv);,http或者https,然后是当前域名或者服务器名,然后就是我们的图片地址啦。

然后我们比如说需要给前端返回多组数据,怎么把数字转换成图片路径呢?我的代码是

 $data=Db::name('residence')->alias('a')
                 ->join('dp_area e','a.area_id=e.id')
                 ->join('dp_fund f','a.fund_id=f.id')
                 ->join('dp_address g','a.qu=g.id')
                 ->field('a.id,a.name,a.status,a.price,a.type,a.pic,g.qu,a.quan,e.rname,f.fprice')
                 ->where('new','=','1')
                 ->order('id')
                 ->page($page,5)
                 ->select();
$arr=array();      
             foreach ($data as $k => $v) {
                 foreach ($v as $kk => $vv) {
                      if ($kk=="pic") {
                        $v[$kk]="http://".$_SERVER['SERVER_NAME'].get_file_path($vv);  //将图片id替换成具体路径      
                      }         
                  }   
                $arr[$k]=$v; //将图片id更换成具体路径的数据
            }

大概就是这样子。

posted @ 2019-08-09 17:15  哟~好莱坞  阅读(443)  评论(0编辑  收藏  举报
Live2D
虚琨 2019/9/21 星期六 10:46:02