为了账号安全,请及时绑定邮箱和手机立即绑定

php if判断 如何使用条件表达式

php if判断 如何使用条件表达式

森栏 2019-05-25 14:59:10
$price=123;$price1=124;$symbol=">";//可能是
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

functioncompare($a,$b,callable$compare){
return$compare($a,$b);
}
functionmore($a,$b){
return$a>$b;
}
functionless($a,$b){
return$a<$b;
}
functionequal($a,$b){
return$a==$b;
}
var_dump(compare(123,124,'more'));
var_dump(compare(123,124,'less'));
var_dump(compare(123,124,'equal'));
var_dump(compare(123,123,'equal'));
简化版
functioncompare($a,$b,$symbol){
$compare=[
'>'=>function($a,$b){return$a>$b;},
'<'=>function($a,$b){return$a<$b;},
'='=>function($a,$b){return$a==$b;}
];
return$compare[$symbol]($a,$b);
}
var_dump(compare(123,124,'>'));
var_dump(compare(123,124,'<'));
var_dump(compare(123,124,'='));
var_dump(compare(123,123,'='));
                            
查看完整回答
反对 回复 2019-05-25
?
忽然笑

TA贡献1806条经验 获得超5个赞

肯定是不可以的建议写一个方法,传递这三个参数,然后内部判断
functionaaa($symbol,$prcie,$price1){
if($symbol=='='){
if($price1==$price){
returntrue
}else{
returnfalse
}
}elseif($symbol=='>'){
if($price1>$price){
returntrue
}else{
returnfalse
}
}elseif($symbol=='<'){
if($price1<$price){
returntrue
}else{
returnfalse
}
}
}
                            
查看完整回答
反对 回复 2019-05-25
  • 2 回答
  • 0 关注
  • 1580 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信