Php 将Laravel集合投射到阵列中

Php 将Laravel集合投射到阵列中,php,laravel,laravel-5,Php,Laravel,Laravel 5,这是我的代码$titles=DB::table'roles'->列出了'title'; 如何将Laravel 5集合中的$titles强制转换为关联数组?在函数中包含ID,并从模型调用: $titles = Role::lists('title', 'id')->toArray(); 或者直接打电话: $titles = DB::table('roles')->lists('title', 'id'); 在这种情况下,例如在选择字段中,id将是选项值。将id包括在函数中,并从模型

这是我的代码$titles=DB::table'roles'->列出了'title';
如何将Laravel 5集合中的$titles强制转换为关联数组?

在函数中包含ID,并从模型调用:

$titles = Role::lists('title', 'id')->toArray();
或者直接打电话:

$titles = DB::table('roles')->lists('title', 'id');

在这种情况下,例如在选择字段中,id将是选项值。

将id包括在函数中,并从模型调用:

$titles = Role::lists('title', 'id')->toArray();
或者直接打电话:

$titles = DB::table('roles')->lists('title', 'id');

在这种情况下,例如,在选择字段中,id将是选项值。

laravel集合具有toArray方法,该方法将返回内容的数字键控数组。索引的键控方式与集合中的键控方式完全相同。要重置它们,请首先调用集合上的值

$titles=DB::表'roles'->列出'title'; $result=$titles->toArray; 对于关联数组,您需要使用类似这样的方法手动执行此操作

$titles=DB::表'roles'->列出'title','id'; $result=[]; foreach$titles作为$title{ //使用ID作为键,使用标题作为值 $result[$title->id]=$title->title; }
laravel集合有一个toArray方法,该方法将返回一个数字键控的内容数组。索引的键控方式与集合中的键控方式完全相同。要重置它们,请首先调用集合上的值

$titles=DB::表'roles'->列出'title'; $result=$titles->toArray; 对于关联数组,您需要使用类似这样的方法手动执行此操作

$titles=DB::表'roles'->列出'title','id'; $result=[]; foreach$titles作为$title{ //使用ID作为键,使用标题作为值 $result[$title->id]=$title->title; }
结果仍然是一个laravel集合,我想将此集合强制转换为一个PHP关联数组。尝试在集合结果中调用toArray。据我所知,laravel在任何地方都不包含返回集合的List方法,因此toArray应该是不必要的,并且会对其他任何人造成致命错误。您是否在某处重写某些函数?实际上,您是对的@user3158900。我又改变了我的答案。如何将toArray转换回正常的雄辩模型?可能吗?结果仍然是一个laravel集合,我想将此集合强制转换为PHP关联数组。尝试在集合结果中调用toArray。据我所知,laravel在任何地方都不包含返回集合的List方法,因此,toArray是不必要的,它将导致其他人的致命错误。您是否在某处重写某些函数?实际上,您是对的@user3158900。我又改变了我的答案。如何将toArray转换回正常的雄辩模型?有可能吗。lists'title'调用返回一个数组,您不能在该数组上运行toArray。2.当您列出'title','id'时,您会得到一个id=>title元素的关联数组。无需手动填充结果数组。只是做了一个快速的修补检查,它至少在L5.1中工作得很好。也就是说,L4的行为不同,但问题被标记为L5.1。lists'title'调用返回一个数组,您不能在该数组上运行toArray。2.当您列出'title','id'时,您会得到一个id=>title元素的关联数组。无需手动填充结果数组。只是做了一个快速的修补检查,它至少在L5.1中工作得很好。也就是说,L4的行为不同,但问题被标记为L5。