从现有数组创建数组堆栈

时间:2018-05-11 20:49:33

标签: php

假设我有一个这样的数组:

$mail[0] = "test1@gmail.com";
$mail[1] = "test2@gmail.com";
$mail[2] = "test3@gmail.com";
$mail[3] = "test4@gmail.com";
$mail[4] = "test5@gmail.com";
$mail[5] = "test6@gmail.com";

现在我想将这些邮件转换为字符串,并在用逗号分隔的每3封邮件邮件后将它们放入数组中。 像这样的东西 -

$email[0] = "test1@gmail.com, test2@gmail.com, test3@gmail.com";
$email[1] = "test4@gmail.com, test5@gmail.com, test6@gmail.com";
$email[2] = "test71@gmail.com, test8@gmail.com, test9@gmail.com";

我该怎么做?

1 个答案:

答案 0 :(得分:0)

轻微修改您的代码:

for($i=0; $i<sizeof($oneusers); $i+=3){
    $new[] = $oneusers[$i].", ".$oneusers[$i + 1].", ".$oneusers[$i + 2];
}

print_r($new);

更进一步,您可以添加其他检查$oneusers[key]是否存在。

另一个代码,它将执行相同操作,但不编写i, i+1, i+2

$chunks = array_chunk($oneusers, 3);
foreach ($chunks as $chunk) {
    $new[] = implode(',', $chunk);
}

print_r($new);