Laravel 5.2-如何改进此功能?

Laravel 5.2-如何改进此功能?,laravel,laravel-5,Laravel,Laravel 5,我觉得我在《雄辩》杂志上找模特的方式有点奇怪。我想知道是否有任何方法可以使我当前的代码看起来更好?这是: 是的,我可以循环以获得更少的代码,但我获取模型的方式是我主要关心的问题,我的意思是,无论如何,我是否可以将调用减少到1而不是12 谢谢 好的,您可以这样做Info::get(['encoded'])您将获得编码字段的数组,循环并根据您的要求制作它 更具体的做法如下 已编辑 好的,您可以这样做Info::get(['encoded'])您将获得编码字段的数组,循环并根据您的要求制作它 更具体

我觉得我在《雄辩》杂志上找模特的方式有点奇怪。我想知道是否有任何方法可以使我当前的代码看起来更好?这是:

是的,我可以循环以获得更少的代码,但我获取模型的方式是我主要关心的问题,我的意思是,无论如何,我是否可以将调用减少到1而不是12


谢谢

好的,您可以这样做
Info::get(['encoded'])
您将获得编码字段的数组,循环并根据您的要求制作它

更具体的做法如下

已编辑


好的,您可以这样做
Info::get(['encoded'])
您将获得编码字段的数组,循环并根据您的要求制作它

更具体的做法如下

已编辑


@Qazi使foreach语句更短,if语句更少,让我们进行一些重构

 $months_keys = ['jan','feb','mar',....];
 $months = []

 foreach($result as $month){
     $key = $months_keys[(int)$month - 1];
     $months[$key] = $month;
 }

@Qazi使foreach语句更短,if语句更少,让我们进行一些重构

 $months_keys = ['jan','feb','mar',....];
 $months = []

 foreach($result as $month){
     $key = $months_keys[(int)$month - 1];
     $months[$key] = $month;
 }

您能告诉我,您要取哪些字段吗?有很多方法可供选择。。。其中一个最常见且可行的选择下拉列表是
Info::lists('name','id')->all()
它将产生类似这样的结果
[1=>1月,2=>2月,3=>3月……]
我只想要“encoded”字段tho.。您能提供您的数据库吗。我可以提供另一种使用MySQL的
GROUP BY
的方法。您能告诉我,您将获取哪些字段吗?有很多方法可供选择。。。其中一个最常见且可行的选择下拉列表是
Info::lists('name','id')->all()
它将产生类似这样的结果
[1=>1月,2=>2月,3=>3月……]
我只想要“encoded”字段tho.。您能提供您的数据库吗。我可以提供另一种方式,使用MySQL的
groupby
?根据您的代码,它将填充范围从01到12的
encoded
,但我如何最终将其添加到数组中?有多种方法,您可以使用foreach循环,也可以使用数组索引,您确实希望像这样使用数组
$months['jan']=$月份['feb']=
?完全正确。您如何从查询的模型映射它?@Jim请看我更新的答案,我只是给您概念/想法,您根据您的结果/要求使用它一次查询?根据您的代码,它将填充范围从01到12的
encoded
,但我如何最终将其添加到数组中?有多种方法,您可以使用foreach循环,也可以使用数组索引,您确实希望像这样使用数组
$months['jan']=$月份['feb']=
?完全正确。您如何从查询的模型映射它?@Jim请看我更新的答案,我只是给您概念/想法,您根据您的结果/需求使用它
 $months_keys = ['jan','feb','mar',....];
 $months = []

 foreach($result as $month){
     $key = $months_keys[(int)$month - 1];
     $months[$key] = $month;
 }