陌丿尘16 2022-04-24 07:34 采纳率: 90.2%
浏览 18
已结题

关于php的运算符问题

= > and // 优先级: || > = > or $a = 3; $b = false; $c = $a or $b; var_dump($c); // 这里的 $c 为 int 值3,而不是 boolean 值 true $d = $a || $b; var_dump($d); //这里的 $d 就是 boolean 值 true ?>

为什么 //这里的 $d 就是 boolean 值 true
这里一直理解不了,$a || $b 他的内容不是3 || false吗,为什么结果是true

  • 写回答

1条回答 默认 最新

  • 黑白码农 2022-04-24 07:46
    关注
    
    $a || $b  就是  a 或者 b ,所以结果是 true
    
    同时,如果是表达式,那么 如果表达式a 为真,后面的php就不处理了,直接返回true,如果表达式a为假,那么再去看表达式b
    或的原则就是有一个为真就是真
    
    $c = $a or $b  这个就像 $c * $a + $b 类型,先处理 $c=$a,然后结果与$b or
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 5月1日
  • 已采纳回答 4月24日
  • 创建了问题 4月24日