PLS.我是PHP的新手,所以请理解。好的,就这样吧。.我首先想知道的是"函数和 if 语句可以在一个代码中吗?"其次对于下面的代码,只需看看注释在哪里,如果参数 $first 和 $second 的值相同,我应该在 if 语句中键入什么才能让它说"相同",如果参数 和 的值相同,如果不是,则说"不一样"。
<?php
function verify($first,$second)
{
echo $first . " and " . $second ;
}
echo
verify ("1","2");
if ($first === $second) /* **NOTE: I know this is wrong cause its not working** */
echo " ARE THE SAME";
else
echo " ARE NOT THE SAME";
?>
我认为仅此而已。谁能帮忙?
你的基本问题是范围问题之一。在verify()
之外,没有定义$first
和$second
。您可以简单地将其余代码包含在函数体中,这将执行您想要的操作,例如
function verify($first,$second) {
echo $first . " and " . $second ;
if ($first === $second) {
echo " ARE THE SAME";
} else {
echo " ARE NOT THE SAME";
}
}
verify("1", "2");
。但是,写入输出缓冲区的函数很少是一个好主意。相反,将逻辑封装在函数中,并将显示留给过程代码,例如
function verify($a, $b) {
return $a === $b;
}
$first = '1';
$second = '2';
echo $first, ' and ', $second;
if (verify($first, $second)) {
echo ' are the same';
} else {
echo ' are not the same';
}
如果您查看比较运算符,您会发现只有当输入的两个变量属于同一类型时,===
才会为真。通常,如果一个函数返回true
你仍然可以使用 if($returncode == 1)
它将是真的,而if($returncode === 1)
将是假的。您必须使用 if($returncode === true
来触发 if 语句。
此外,您必须将第二个 if 语句放入函数中,因为您使用函数声明的变量是局部变量,这意味着它只能在函数中访问。
<?php
function verify($first,$second)
{
if($first===$second){
return "Same";
} else {
return "Different";
}
}
echo verify ("1","2");
?>