Php Laravel雄辩的集合属性

Php Laravel雄辩的集合属性,php,laravel,model,attributes,eloquent,Php,Laravel,Model,Attributes,Eloquent,我正在用Laravel 5.2开发一个Web应用程序,但有一个问题我无法解决 我有一个扩展了雄辩模型的模型,但当我试图输出带有“where”的数据库表时,例如 \App\MyModel::where('id_table', 23)->first(); 它返回了一个集合,其中包含了许多目前对我没有用处的信息,如“guarded”、“keytype”。。。我的表的数据在“属性”下。 按照laravel的指南,我看到每个人都像我一样简单地使用where,然后用$mytable->myvalue

我正在用Laravel 5.2开发一个Web应用程序,但有一个问题我无法解决

我有一个扩展了雄辩模型的模型,但当我试图输出带有“where”的数据库表时,例如

\App\MyModel::where('id_table', 23)->first();
它返回了一个集合,其中包含了许多目前对我没有用处的信息,如“guarded”、“keytype”。。。我的表的数据在“属性”下。 按照laravel的指南,我看到每个人都像我一样简单地使用where,然后用
$mytable->myvalue
输出,但这当然不适合我

下面是我所说的收藏的截图:

当我使用类似于
“::where()”
的东西时,如何始终只获取属性


我已经尝试了
getAttributes()
,但它给了我500个错误。

如果您只想获得两个属性,可以做很多事情。也许第一种方式对您来说是最好的:

使用:

使用:

对参数使用
get()

\App\MyModel::where('id_table', 23)->get(['id', 'name']);
如果您希望获得雄辩的集合,然后仅使用属性构建数组,则可以使用:

如果要获取新集合的某些属性,请在集合上使用:

$collection = \App\MyModel::where('id_table', 23)->get();
$names = $collection->pluck('name');

如果您只想获得几个属性,那么可以做很多事情。也许第一种方式对您来说是最好的:

使用:

使用:

对参数使用
get()

\App\MyModel::where('id_table', 23)->get(['id', 'name']);
如果您希望获得雄辩的集合,然后仅使用属性构建数组,则可以使用:

如果要获取新集合的某些属性,请在集合上使用:

$collection = \App\MyModel::where('id_table', 23)->get();
$names = $collection->pluck('name');

谢谢你的回复!您的toArray()方法或多或少是我想要的,但我也尝试了select and get,它们总是返回一个集合,其中包含“table”、“primaryKey”、“connection”、“keyType”、“perPage”(我在问题中添加了一个图像)。那么,如何使用get()方法仅获取属性呢?我想您只需要一些属性。如果
get()
对您没有帮助,请使用
->get()->toArray()
获取所有属性,而不包含任何其他对象属性。感谢您的回复!您的toArray()方法或多或少是我想要的,但我也尝试了select and get,它们总是返回一个集合,其中包含“table”、“primaryKey”、“connection”、“keyType”、“perPage”(我在问题中添加了一个图像)。那么,如何使用get()方法仅获取属性呢?我想您只需要一些属性。在您的情况下,
get()
对您没有帮助,请使用
->get()->toArray()
获取所有属性,而无需任何其他对象属性。
$collection = \App\MyModel::where('id_table', 23)->get();
$names = $collection->pluck('name');