php - Laravel 将单列结果作为字符串获取

标签 php arrays laravel laravel-5

您好,我想知道是否可以获取字符串形式的列值。而不是数组中的数组:

当前查询:Number::limit('1000')->get(['number'])->toArray()

目前的结果是这样的:

Array in array

最好的结果:

String instead of array

最佳答案

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/

相关文章:

php - 如何检测 .flv 电影文件 URL?

php - 在浏览器中显示Word文档、Excel表格、Power Point

JavaScript。变量未正常赋值

python - 如何在 Python 中将一个数组中的多个列堆叠在一起?

laravel - 没有足够的权限在 Algolia Laravel 中添加对象

php - for 循环和 for while 嵌套在 list() 之间的区别

javascript - jQuery Ajax 返回多个数据

c - C语言中Stack的数组实现

javascript - Laravel 使用 AJAX 下载 xls 文件

mysql - 如何在MySQL中实现先决条件表