问答详情
源自:5-9 PHP中的算术运算符(2)

正确的代码应该是这样的

<?php     $maxLine = 4; //每排人数 $no = 16;//学生编号    $line = ceil($no/$maxLine); $row = $no%$maxLine<>0?$no%$maxLine:$maxLine; echo "编号".$no."的座位在第".$line."排第".$row."个位置"; ?>

省了东西怎么看得懂啊,这样的话就看得懂了啊

提问者:慕粉3151215 2016-04-18 17:44

个回答

  • tenme2
    2016-06-11 22:38:16

    怎么没人问最后一句输出时<b>   </b> 是什么意思??

  • 1ong_way
    2016-04-23 16:30:21

    你这样也是对的。

    $row = $no%$maxLine ? $no%$maxLine :$maxLine;

    这样也没错,这个其实是把$no%$maxLine的结果从int类型隐式转换成了bool类型,即计算的结果是0则为false,非零即为true。

  • aimoty
    2016-04-18 21:48:52

    这是三元操作符啊,我试着把$no%$maxLine和$maxLine换了个位置,整个试子就变成了$row = $no%$maxLine?$maxLine:$no%$maxLine;   这样的输出结果,$row的值就变成了4。明白了吗,三元操作符只是判断true或者false,而这个判断式里,需要判断的只是$no%$maxLine,这是一个算式,只要这个算式本身是正确的,那就是true