【问题标题】:How to assign data from database to array in laravel controller?如何将数据库中的数据分配给laravel控制器中的数组?
【发布时间】:2021-12-23 06:40:23
【问题描述】:

我想从数据库中分配数据以将其存储在数组中。我没有收到任何错误,但只有最后一个值存储在数组中。

查询以从数据库中获取数据

 $categories = Category::where('parent_id', '=', null)->where('created_by', '=', \Auth::user()->creatorId())->get();
      
$category = [];
            
           if(count($categories) > 0)
           {
                foreach ($categories as $category) {
                    
                    $category[$category->id] = [
                    'id' => $category->id,
                    'category_name' => $category->name,
                    'SubCategory' => $this->getSubcategoryByIdAction($category->id)
                      
                    ];
                        
                }
           }
           
      

【问题讨论】:

    标签: php laravel multidimensional-array foreach laravel-7


    【解决方案1】:

    您在 foreach 循环中覆盖了变量 $category。试试下面的代码:

    <?php
    
    $categories = Category::where('parent_id', '=', null)->where('created_by', '=', \Auth::user()->creatorId())->get();      
    $category = [];
                
    if(count($categories) > 0)
    {
        foreach ($categories as $categoryItem) {
            
            $category[$categoryItem->id] = [
                'id' => $categoryItem->id,
                'category_name' => $categoryItem->name,
                'SubCategory' => $this->getSubcategoryByIdAction($categoryItem->id)  
            ];       
        }
    }
    
    var_dump($category);
    

    【讨论】:

    • 如果有人像我一样第一次错过了它:这里的变化是在foreach的每次迭代中分配的变量的名称
    • 是的,我明白了,谢谢
    猜你喜欢
    • 1970-01-01
    • 2017-09-03
    • 2021-11-06
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多