以下是我的代码,其中我只面临一个困难,当我运行以下脚本然后由于比较失败,$ flag不响应,请让我知道如何解决这个问题?
$s = "iph4on comes";
$se = "4gb comes in iphone";
$f = 0;
$tf = explode(" ",$searching);
$ms= explode(" ",$search_in);
foreach($tf as $word)
{
if (!preg_match("/$word/i", $search_in))
//if (!strpos($search_in, $word));
return false;
}
{
$f = 1;
}
echo $f;
//Due to return flase above i am not echoing
echo "Comparison Failed";
答案 0 :(得分:3)
return
终止当前正在执行的代码块,并“返回”任何调用该代码的代码。如果你在代码的顶层执行一个返回,它实际上是一个exit()
调用,你的回声永远不会到达。
答案 1 :(得分:0)
为什么不在return语句之前放一个echo $flag
?
if (!preg_match("/$word/i", $search_in)){
echo $flag
return false;
}
答案 2 :(得分:0)
您需要将echo
放在return
之前。 return
将执行返回给调用函数,因此之后的任何代码都不会被执行。
if (!preg_match("/$word/i", $search_in)) {
$flag = 1;
echo $flag;
echo "Comparison Failed";
return false;
}