【发布时间】:2016-01-12 07:18:36
【问题描述】:
所以我试图让这个小脚本工作起来很有趣,但无法让它工作, 我有一组随机名称,它们被分配了“随机”电子邮件地址,我想检查电子邮件地址是否有扩展名: '@hotmail.com', '@hotmail.ca',或 '@yahoo.ca' 。如果他们随后回显类似“Daniel,您的电子邮件地址扩展名是 $extension,您有资格”之类的内容 如果他们不只是说'Kayla,你的电子邮件地址是 $extension,你就没有资格。
我想添加一个 foreach 语句,说明对于数组 $ClassRoom2 中的每个人,我尝试使用 strstr(),但它在 foreach 中不起作用,因为它只能有一个字符串。
这是我到目前为止得到的:
qualify = "";
$ClassRoom2 = array(
'Daniel' => 'fresco@hotmail.com',
'Mike' => 'dkoko@yahoo.ca',
'Meranda' => 'brunnn_23@hotmail.ca',
'Will' => 'yumyum03@wp.pl',
'Brittey' => 's0sd@outlook.com',
'Kayla' => 'hocklife@freebie.com' );
switch ($ClassRoom2) {
case '@hotmail.com':
echo 'You are using extension '. $final; $qualify = 1; break;
case '@hotmail.ca':
echo 'You are using extension '. $final; $qualify = 1; break;
case '@yahoo.com':
echo 'You are using extension '. $final; $quality = 1; break;
case '@yahoo.ca':
echo 'You are using extension '. $final; $qualify = 1; break;
case '@live.ca':
echo 'You are using extension '. $final; $quality = 1; break;
default:
echo 'its something else'; $qualify = 0;
break;
}
if ($qualify == 1) {
echo "Congratulations, you quality for the contest. The extension you chose was <b>$final</b>";
} else {
echo "Sorry mate! you didn't quality for the contest.";
}
【问题讨论】:
-
使用
explode('@','email@blabla.com').. -
strrpos('fresco@hotmail.com', '@hotmail.com', 0) === 0 -
您可能想要使用loop 和regular expression,例如
@hotmail\.[a-z]{2,3}。看看foreach()和' preg_match()`