(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框架之數據庫查出來的對象實現轉化為數組就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Laravel5.1 框架數據庫操作DB運行原生SQL的方法分析
- Laravel5.1數據庫連接、創建數據庫、創建model及創建控制器的方法
- 在Laravel5.6中使用Swoole的協程數據庫查詢
- Laravel5.7 數據庫操作遷移的實現方法
- Laravel5.5 數據庫遷移:創建表與修改表示例
- Laravel使用Caching緩存數據減輕數據庫查詢壓力的方法
- 淺談laravel數據庫查詢返回的數據形式
- laravel 查詢數據庫獲取結果實現判斷是否為空
- laravel 判斷查詢數據庫返回值的例子
- 在 Laravel 6 中緩存數據庫查詢結果的方法
- laravel框架數據庫操作、查詢構建器、Eloquent ORM操作實例分析
- Laravel5.1 框架數據庫查詢構建器用法實例詳解