我有这个数组:
Array
(
[name1@domain.com] => Array
(
[0] => domain.de
[1] => domain.org
[2] => domain.eu
)
[name2@domain.biz] => Array
(
[0] => domain.net
)
)
我想要打印像这样的内容
name1@domain.com has domain.de, domain.org, domain.eu
name2@domain.biz has domain.net
我使用了这个技巧,但它不起作用:
foreach($array as $email => $domains){
foreach($domains as $key => $domain){
$domener_t[] = $domain;
}
$domains = implode(", ",$domener_t);
echo $email.$domains."<br>";
}
答案 0 :(得分:3)
你应该使用for-each循环。
foreach($array AS $domain => $domains) {
printf("%s has %s\r\n", $domain, implode(", ", $domains));
}
答案 1 :(得分:0)
<?php
$MyArray = array('name1@domain.com' => array('domain.de','domain.org','domain.eu'),'name2@domain.biz' => array('domain.net'));
foreach ($MyArray as $key => $value)
{
echo $key . ' has '. implode(', ', $value).'<br>';
}
?>
输出
name1@domain.com has domain.de, domain.org, domain.eu
name2@domain.biz has domain.net