您好,我想知道是否可以获取字符串形式的列值。而不是数组中的数组:
当前查询:Number::limit('1000')->get(['number'])->toArray()
目前的结果是这样的:
最好的结果:
最佳答案
在 toArray()
调用之前,添加 pluck('number')
:
$result = Number::limit('1000')->get(['number'])->pluck('number')->toArray();
就是这样!这将从结果集合中仅提取 number
属性,并为您提供一个单级数组。
之所以有效,是因为您从 get()
返回一个 Collection:
All multi-result sets returned by Eloquent are an instance of the Illuminate\Database\Eloquent\Collection object, including results retrieved via the get method or accessed via a relationship.
以及pluck
方法:
https://laravel.com/docs/5.1/collections#method-pluck
更新
@wunch 在评论中提供了另一种更简洁的方法:
$result = Number::limit('1000')->lists('number')->toArray();
关于php - Laravel 将单列结果作为字符串获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37883290/