假设我发送了一系列电子邮件。电子邮件是一个包含john @ test.com,tom @ test.com,jerry @ test.com等等的数组
从接收方面我正在尝试检索电子邮件。
foreach ($_POST['emails'] as $i => $value) {
echo "emails[$i] is $value<br />";
}
这是正确的方法吗? 对于foreach循环,它会迭代直到电子邮件数组中的所有数据都完成了吗?
答案 0 :(得分:1)
这是正确的。您可以使用更简单的循环:
foreach ($_POST['emails'] as $email) {
echo $email, "<br>";
}
如果您正在拨打电子邮件发送功能,可以使用array_walk()。
function send_mail($email){
echo "Sending email to {$email}";
}
array_walk($_POST['emails'], 'send_mail');
# Sending email to john@test.com
# Sending email to tom@test.com
# Sending email to jerry@test.com
# ...
答案 1 :(得分:0)
尝试
foreach ( $_POST ['emails'] as $value ) {
echo $value , "<br />";
}
答案 2 :(得分:0)
只需使用$ value:
foreach($_POST['emails'] as $value) {
echo "Email: {$value}\n";
}
或者您也可以使用数组键来访问该值,但如果您不想编辑值,则没有意义:
foreach($_POST['emails'] as $key => $value) {
echo "Email: " . $_POST['emails'][$key];
}
答案 3 :(得分:-1)
不,您对关联数组使用该语法,$_POST['emails']
很可能,而不是关联数组。正确的方法是这样的:
foreach ($_POST['emails'] as $email) {
echo "Email: $email<br />";
}