今天小编就为大家分享一篇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框架之数据库查出来的对象实现转化为数组就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
沃梦达教程
本文标题为:laravel框架之数据库查出来的对象实现转化为数组
基础教程推荐
猜你喜欢
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- php array分组,PHP中array数组的分组排序 2022-08-01
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP中的错误及其处理机制 2023-06-04
- 使用PHP开发留言板功能 2023-03-13
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- PHP命名空间简单用法示例 2022-12-01
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12