laravel中如何将数据库查询对象转化成数组

Admin 2022-06-17 群英技术资讯 662 次浏览

今天这篇我们来学习和了解“laravel中如何将数据库查询对象转化成数组”,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解“laravel中如何将数据库查询对象转化成数组”有一定的帮助。有这方面学习需要的朋友就继续往下看吧!


(1)问题提出

我在从数据库查出来的数据中发现其是一个对象,而不是一个数组,这样我们就无法遍历它从而达到一些目的

(2)寻求解决

这里是我的Controller层的一小段代码

$produceStyle = exhibitionSql::allProduceStyle();//产品类型
    //var_dump($produceStyle);
    $j=0;
    $produceArray = Array();
    foreach($produceStyle as $value){
      //var_dump($value);
 
      $j++;
      $produceArray[$j]=$value->produceColorType;
 
    }

这里是我Model层的一小段代码

 public static function allProduceStyle(){//产品类型
    $data =DB::select("select distinct produceColorType from produce ");
 
    return $data;
  }

可以看出我在Controller中把得到的数据首先遍历一遍,同时定义一个数组,接住这个对象中的一个字段中的值,这样我就可以把这个数据都存入一个数组进行使用了

如下:

for($i=1; $i <= $j; $i++){
      // echo "sad";
      //var_dump($produceArray[$i]['produceColorType']);
      if($select == $produceArray[$i]){
        // echo "sda";
        $produceData =exhibitionSql::produceColor($select);//产品数据
        $CarouselData =exhibitionSql::secondCarouselData();//轮播图
        return view('B_page/produce',[
          'CarouselData'=>    $CarouselData,
          'produceStyle'=>    $produceStyle,
          'produceData'=>     $produceData
        ]);
      }

(3)网友解决

 public function object_array($array) {
    if(is_object($array)) {
      $array = (array)$array;
    } if(is_array($array)) {
      foreach($array as $key=>$value) {
        $array[$key] = object_array($value);
      }
    }
    return $array;
  }

网友提供了一个这样的方法但是我试了没有效果,所以在此我也想请教一下大家,给点指导


这篇关于“laravel中如何将数据库查询对象转化成数组”的文章就介绍到这了,更多相关的内容,欢迎关注群英网络,小编将为大家输出更多高质量的实用文章! 群英智防CDN,智能加速解决方案
标签: 对象转化数组

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服