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;
}网友提供方法我试了一下还是不行,所以请教大家指点一下。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网
