【问题标题】:How Change Array Key Values in Foreach Loop?如何在 Foreach 循环中更改数组键值?
【发布时间】:2018-08-12 08:08:36
【问题描述】:

我过滤数组中的值,创建一个新数组。但是输出中的键是相同的。我在一个新的 foreach 循环中使用了该数组来修复它,但再次给出了相同的输出。

Array ([0] => text1',number,'text2 [1] => text3',number,'text4 [2] => text5',number,'text6)

上面的例子是一系列输出$teams.

foreach ($teams as $key=>$first) {
    $chat = array($first);
    $array = explode("',", $chat[0]);
    $array = explode(",'", $array[0]);
    $redteams = array($array[0]);
    print_r($redteams);
}

它给我的输出:

 Array ( [0] => text1 ) Array ( [0] => text3 ) Array ( [0] => text5 )

它应该是这样的输出:

Array ( [0] => text1 ) Array ( [1] => text3 ) Array ( [2] => text5 )

【问题讨论】:

  • 你明白输出是一个多维数组吗?我想你正在寻找$redteams[] = $array[0];
  • @Aniket Sahrawat,我以前试过,但结果不是我想要的。输出:数组([0] => 文本 [1] => 文本),数组([0] => 文本 [1] => 文本 [2] => 文本),数组([0] => 文本 [1 ] => 文字 [2] => 文字 [3] => 文字)
  • $redteams[$i++ ?? 0] = array( $i - 1 => $array[0] );
  • @Aniket Sahrawat,给出了类似的输出。
  • 代码应该可以正常工作,您必须从 foreach 循环中删除 print_r 并在循环完成后编写它。

标签: php arrays foreach explode


【解决方案1】:

我认为你可以这样做

array_values($redteams);

【讨论】:

  • 感谢您的评论。我以不同的方式解决了它。
猜你喜欢
  • 2021-08-03
  • 1970-01-01
  • 2021-10-17
  • 2013-07-14
相关资源
最近更新 更多