如何编辑此foreach循环,将具有相同键的数组组合在一起?

时间:2019-05-10 05:56:42

标签: php loops

我的问题是foreach循环每次都会创建一个新数组。我希望所有内容都在数组中,并且具有相同键的元素应该合并:

foreach ($lines as $line) {
   if (true) {
        $lineName = strtok($line, " "); // takes the first word
        $lineNameCleaned = substr($lineName, strpos($lineName, '@') + 1); // deletes all @ before a lineName
   }

   $res = [$lineNameCleaned => $line,];
}

$res数组每次都会创建一个新数组,但我希望结果是这样的:

array = [
   'lineName1' => [ 
           'value 1',
           'value 2',
         ],
    'lineName2' => [
            'value3',
         ],
   ];

以便具有相同键(lineName)的值位于同一数组中。

0 个答案:

没有答案