function paraMatch($consumerid1, $consumerid2)
{
$para1=getpara1($consumerid1);
$para2=getpara2($consumerid2);
echo $para1;
echo $para2;
if($para1=$para2)
echo 1;
return 1;
else
echo 0;
return 0;
}
答案 0 :(得分:0)
您的错误位于==
,请不要使用0和1尝试true和false或更好并且缺少{}
以下是工作代码:
function paraMatch($consumerid1, $consumerid2)
{
$para1=getpara1($consumerid1);
$para2=getpara2($consumerid2);
echo $para1;
echo $para2;
if($para1 == $para2) {
echo true;
return true;
}
else{
echo false;
return false;
}
}
像这样调用函数:
if(paraMarch($id1 , $id2) == true){
//true
}else{
//false
}
可以解决所有可能的问题
答案 1 :(得分:0)
您指的是编程方面或段落在“方面”中编写的语言?如果你的意思是后者,那将是非常困难的。但如果你的意思 编程方面并假设您的意思是PHP,因为它是您标记的唯一编程语言,然后是我的答案。
//You can use the strcmp function
function paraMatch($consumerid1, $consumerid2)
{
//Don't know what you are doing here
$para1=getpara1($consumerid1);
$para2=getpara2($consumerid2);
echo $para1;
echo $para2;
//======================================
if(strcmp($para1,$para2) == 0) {//strcasecmp($para1,$para2) //for case-insensitive
echo 1;
return 1;
} else {
echo 0;
return 0;
}
}
或者您可以使用使用3个等号的方法。 2和3等号之间的差异可能会导致问题,因为PHP是动态的,除非您确定两个变量将是相同类型或您知道自己在做什么。 php == vs === operator
function paraMatch($consumerid1, $consumerid2)
{
$para1=getpara1($consumerid1);
$para2=getpara2($consumerid2);
echo $para1;
echo $para2;
if($para1 === $para2) {// $para1 == $para2 //Can work as intended too in most situations
echo 1;
return 1;
} else {
echo 0;
return 0;
}
}
我使用字符串的strcmp函数来避免混淆,但可以随意使用任何方法。您可以使用2个等号,但要谨慎使用。
出于好奇,为什么不直接返回布尔值?