如何解决php foreach结果
| foreach ($flr_array as $flr) {
if (!($flr = trim($flr)))
continue;
//list($flr,$keyword) = explode(\'|\',$flr,2);
$ip = \'\';
$err_msg = isValidFLR($flr,$ip);
if (!$err_msg) {
list($randlink,$lastid,$scr) = addLink($flr,$ip);
$flr = stripslashes($flr);
$url_array[$i][\'number\'] = $i + 1;
$url_array[$i][\'flr\'] = $flr;
$url_array[$i][\'flr_substr\'] = (strlen($flr) > 33) ? substr($flr,33) . \'...\' : $flr;
$url_array[$i][\'randlink\'] = $randlink;
$url_array[$i][\'fullrand\'] = $config[\'indexurl\'] . $config[\'mod_rewrite_char\'] . $randlink;
$url_array[$i][\'scr\'] = $scr;
$url_array[$i][\'id\'] = $lastid;
$url_array[$i][\'flr_length\'] = strlen($flr);
$url_array[$i++][\'randlink_length\'] = strlen($config[\'indexurl\'] . $config[\'mod_rewrite_char\'] . $randlink);
////
//$smarty->assign(\"flr_length\",strlen($_REQUEST[\'flr\']));
//$smarty->assign(\"randlink_length\",strlen($config[\'indexurl\'] . $config[\'mod_rewrite_char\'] . $randlink));
////
} else {
js_alert($err_msg);
}
}
在isValidFLR函数中,这是验证码检查的一部分:
if ($config[\'captcha_check\']) {
if (verifyCaptcha() == false) {
return \'Wrong code!\';
}
}
假设我在textarea中输入:
google.com
google.de
google.net
并输入错误的验证码,那么它会给我3条错误的验证码信息!
我想是因为有foreach的缘故。任何想法如何使foreach只显示一条错误消息?
解决方法
您的问题很难理解,但我认为您是对的(在foreach中)。
如果err_msg <> \'\',则应在代码中加上
break
,以退出foreach(如果您要这样做)。
, else {
js_alert($err_msg);
break; //this will break out of for loop
//or return false if it a function
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。