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;
}
问问题
454 次
2 回答
0
您的错误在==
并且请不要使用 0 和 1 尝试正确和错误或更好和缺失{}
这是工作代码:
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
}
这将解决所有可能的问题
于 2013-09-20T10:31:17.367 回答
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 === 运算符。
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 个等号,但请谨慎使用。
只是出于好奇,你为什么不直接返回布尔值呢?
于 2013-09-20T11:20:14.643 回答