首页 > 解决方案 > 将对象转换为数组

问题描述

我正在尝试对 csv 文件进行分页,并且我成功使用了它的数据,但我无法使用文件的标题(键)。错误说 array_keys expected() 是数组,但给定了对象,所以我想将 array_keys() 转换为数组。

我尝试使用 toArray() 函数但没用:

public function indexPagination()
    { 
        $products = Product::all();
        $products = $products->toArray();
        $products = Product::paginate(5); 

        return view ('inventory.layout', ['products'=>$products]);
    }

错误来自本节谁将显示文件的键,但错误说 array_keys() 期望是数组但给定对象....请帮助

<thead>   
    @if ($arrkeys= array_keys($products[0])) 

        @foreach ($arrkeys as $keys)  
            <th>{{$key}}</th>
        @endforeach

    @endif 
    </thead>

标签: laravel

解决方案


现在通过使用 toArray() 函数将 array_keys() 的参数转换为数组,它工作得很好,因为它之前是一个对象。这是答案:

    @if ($arrkeys= array_keys(($products[0])->toArray()))

        @foreach ($arrkeys as $key)  
            <th>{{$key}}</th>

        @endforeach  
    @endif

推荐阅读