zoukankan      html  css  js  c++  java
  • 用海豚框架(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更换成具体路径的数据
                }

    大概就是这样子。

  • 相关阅读:
    MapReduce实例
    hadoop 分布式安装
    redis缓存
    Flink初始
    Flume初始
    大数据学习之路(持续更新中...)
    使用VisualVM分析性能
    JVM的理解
    Java日记
    UI笔记2
  • 原文地址:https://www.cnblogs.com/cyk2/p/11328484.html
Copyright © 2011-2022 走看看