您好,欢迎访问一九零五行业门户网

问一个 function 中 if 语句的问题,本人菜鸟一个

如有类似函数,不完整,只是做个举例
function p_abc($a='',$b='',$c=''){
    $a= xxx
    if  ($b='255'){
 $a=xxx+1
}
    $c=yyy
}
当 $b='255' ,函数能正常运行,当$b 不等于 255的时候, 貌似 $c=yyy 不能执行(我不确定)。导致程序出错。
为什么呢?本人菜鸟一个,好心人告诉一下。
回复讨论(解决方案) 一个 = 是赋值
两个 = 是比较
你 if  ($b='255'){ 就是让 $b 为 255,表达式永远成立
应写作 if  ($b =='255'){
 if  ($b='255')
你的这个下发语法上没有问题,但是这个一定为真,这个是赋值
php中判断是否相等使用 == 和 ===
例子 名称 结果
$a == $b 等于 true,如果类型转换后 $a 等于 $b。
$a === $b 全等 true,如果 $a 等于 $b,并且它们的类型也相同。
$a != $b 不等 true,如果类型转换后 $a 不等于 $b。
$a  $b 不等 true,如果类型转换后 $a 不等于 $b。
$a !== $b 不全等 true,如果 $a 不等于 $b,或者它们的类型不同。
$a  $a > $b 大于 true,如果 $a 严格大于 $b。
$a  $a >= $b 大于等于 true,如果 $a 大于或者等于 $b。
参考:http://www.php.net/manual/zh/language.operators.comparison.php
其它类似信息

推荐信息