【问题标题】:How to fill an array in given format? [closed]如何以给定格式填充数组? [关闭]
【发布时间】:2020-10-16 23:04:33
【问题描述】:

我想形成一个这样的数组:

$routes = [
            array("key" => 0, "title" => "All"),
            array("key" => 1, "title" => "Web Series"),
            array("key" => 2, "title" => "Reality Shows"),
            array("key" => 3, "title" => "Singing"),
            array("key" => 4, "title" => "Vendors")
        ];

这里,标题(网络连续剧、真人秀、歌唱)应该来自数据库的响应:

    $projectTypes = ProjectType::select('project_type_title')->get()->all();

如何使用这些值填充上述数组?

注意:

array("key" => 0, 
      "title" => "All") 

必须预定义且不从数据库中获取,只有其他项目类型从数据库中获取。 我的数据库包含以下值:

array ( 0 => 'Web series', 1 => 'Drama', 2 => 'Movie', )

【问题讨论】:

  • 请用var_export($projectTypes)告诉我们$projectTypes中的内容
  • ->get()->all() 是多余的,->get()->all()
  • 为什么你想要一个数组,其中的值由一个包含键号和值的数组组成?只需 array[value,value,...] 就可以了。如果您需要密钥号码,请使用array_keys()
  • $projectTypes 包含:数组(0 => '网络系列',1 => '戏剧',2 => '电影',)

标签: php mysql arrays laravel-5 eloquent


【解决方案1】:

请随意使用下面的示例

   $projectTypes = [array("key" => 1, "title" => "Web Series"),
        array("key" => 2, "title" => "Reality Shows"),
        array("key" => 3, "title" => "Singing"),
        array("key" => 4, "title" => "Vendors")];

$routes = [["key" => 0, 
      "title" => "All"]];

foreach ($projectTypes as $value) {
    $routes[] = ["key" => $value['key'], "title" => $value['title']];
}

结果:

Array ( [0] => Array ( [key] => 0 [title] => All ) 
        [1] => Array ( [key] => 1 [title] => Web Series ) 
        [2] => Array ( [key] => 2 [title] => Reality Shows ) 
        [3] => Array ( [key] => 3 [title] => Singing ) 
        [4] => Array ( [key] => 4 [title] => Vendors ) )

编辑:

$projectTypes = ProjectType::select('project_type_title')->get()->all();

$finalResult= [["key" => 0, 
      "title" => "All"]];

foreach ($projectTypes as $key => $value) {
    $finalResult[] = ["key" => $key + 1, "title" => $value];
}

【讨论】:

  • 我想从数据库中获取数据显示的路线只是为了格式。
  • 看看我的编辑是你想做的吗?
  • 是的,编辑后的回复几乎是完美的。有什么方法可以从 1 开始计数。因为现在我有两个不同的数组,它们的 key = 0 { "key": 0, "title": "All" }, { "key": 0, "title ": { "project_type_title": "网络系列" } }
  • 此时将所有键加一。 ["key" => $key + 1, "title" => $value];
  • 完美。谢谢你!
猜你喜欢
  • 1970-01-01
  • 2010-09-16
  • 2016-02-18
  • 1970-01-01
  • 2014-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多