在php中使用函数
我试图让返回值显示,但它只执行最后的else过程。我的if语句有问题。。。我正在使用一个html页面来调用这个php页面。。。当我输入结果时,不管是什么操作,它只显示乘法值在php中使用函数,php,Php,我试图让返回值显示,但它只执行最后的else过程。我的if语句有问题。。。我正在使用一个html页面来调用这个php页面。。。当我输入结果时,不管是什么操作,它只显示乘法值 function total($num1, $num2, $op) { if($op == "+"){ $total = "$num1 + $num2 = ".($num1 + $num2); return $total; } elseif($_POST['operation'
function total($num1, $num2, $op) {
if($op == "+"){
$total = "$num1 + $num2 = ".($num1 + $num2);
return $total;
} elseif($_POST['operation'] == "-"){
$total = "$num1 - $num2 = ".($num1 - $num2);
return $total;
} elseif($_POST['operation'] == "/"){
$total = "$num1 / $num2 = ".($num1 / $num2);
return $total;
} else{
$total = "$num1 * $num2 = ".($num1 * $num2);
return $total;
}
}
echo total($num1, $num2, $op);
我想你只是忘了用$op,而是用了$U POST 试一试
问题可能是因为您将$op和$u POST['operation']混合在一起。此外,您还担心您的if语句。因为每一个都返回,所以可以在不增加运行时复杂性的情况下大大简化这一过程
function total($num1, $num2, $op) {
if($op == "+")
return "$num1 + $num2 = ".($num1 + $num2);
if($op == "-")
return "$num1 - $num2 = ".($num1 - $num2);
if($op == "/")
return "$num1 / $num2 = ".($num1 / $num2);
return "$num1 * $num2 = ".($num1 * $num2);
}
给我们一些实际值,让我们一起使用。你先从
$op='+'
开始,然后在PHP函数的其余比较中使用$\u POST['operation']
来拧毛狗。你在做if($op=“+”)
然后elseif($\u POST['operation']=“-”
这不应该是if($\u POST['operation']==“+”))
?在打开PHP标记后立即将错误报告添加到文件顶部,例如真的很奇怪。我猜……现在,每个人都在等待判决。$\u POST
是一个全局的(实际上是一个超全局的)。你要么完全正确,要么完全错误。看到他们同时使用变量和POST数组,那么。。。时间会证明一切。让我们看看OP有什么要说的,在他们问题下的评论中;-)谢谢大家,用$op替换if语句并使用下面的代码返回正确的值。我的先生,你让我度过了一个美好的夜晚!
function total($num1, $num2, $op) {
if($op == "+")
return "$num1 + $num2 = ".($num1 + $num2);
if($op == "-")
return "$num1 - $num2 = ".($num1 - $num2);
if($op == "/")
return "$num1 / $num2 = ".($num1 / $num2);
return "$num1 * $num2 = ".($num1 * $num2);
}