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

php算法题,请路过的高人指点下

php算法题,请路过的高人指点下

PHP
米琪卡哇伊 2019-03-05 14:54:25
两道PHP体算法题,不懂,请路过的大神帮忙阐述一下原理
查看完整描述

11 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

上下两张图片都是赋值=操作,赋值操作的结果为true,所以每次都能进入到if中,完毕

查看完整回答
反对 回复 2019-03-18
?
ibeautiful

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

近似代码

$a = 1;
if ($a = true) {
    ++$a; // ++/–-运算符不影响布尔值
}
查看完整回答
反对 回复 2019-03-18
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

if中使用"="号的赋值操作
看等号左侧值最终的值来进行判断

if($a = $b) {
    // ...
}

若$b值为false、null、''、[]、0等值时,以上无法进入block代码块
你也可以把上面的代码理解为如下

$a = $b;
if($a) {
    // ...
}
查看完整回答
反对 回复 2019-03-18
?
慕仙森

TA贡献1827条经验 获得超7个赞

这道题还能难倒人的,我是出题者会在判断里面赋予变量b其他值然后让答题者回答变量b的值

查看完整回答
反对 回复 2019-03-18
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

= 等运算优先级 比|| 低, 所以得到 $a=true

查看完整回答
反对 回复 2019-03-18
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

这个不叫算法题
叫大家来找茬
输出2

查看完整回答
反对 回复 2019-03-18
?
HUWWW

TA贡献1874条经验 获得超12个赞

写这代码的是不是写错了?这个判断根本没有意义。
两张图里的if中的参数等于全是赋值为1了,不进行比较。直接输出if中的值,第一张图输出为2,第二张图输出为bool(true)

查看完整回答
反对 回复 2019-03-18
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

脑筋急转弯?

查看完整回答
反对 回复 2019-03-18
  • 11 回答
  • 0 关注
  • 565 浏览

添加回答

举报

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