当你跨入PHP的大门,学习就永无止境,所谓根基坚固,才有枝繁叶茂,硕果累累;那么今天将开启PHP算术系列的文章,也希望大家不计难易,一起练习吧。 本文算术练习的问题是“编写
本文算术练习的问题是“编写一个PHP程序来计算两个给定整数值的总和,如果两个值相同,则返回其总和的三倍”。
下面是我给出的方法:
PHP代码:
<?php function test($x, $y) { return $x == $y ? ($x + $y)*3 : $x + $y; } echo test(1, 2)."<br>"; echo test(3, 2)."<br>"; echo test(2, 2)."<br>";
输出计算结果是:
上述代码中,核心的代码部分就是“$x == $y ? ($x + $y)*3 : $x + $y;
”,这段代码的意思就是先判断$x 和 $y是否相等,如果不相等就执行“$x + $y”,如果相等则执行“($x + $y)*3”。
本例子中我们给出的第一对参数是1和2,是不同的数值,所以返回的结果是他们的和,即3;
第二对参数是3和2,同理,返回的和是5;
第三对给出的参数是2和2,是两个相同的数值,所以返回的结果是他们总和的三倍,即3*(2+2)=12。
这里需要大家掌握一个重要的运算符,三元运算符"?:" 。
语法格式是“(expr1) ? (expr2) : (expr3)
”
对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
注:
自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。
关于PHP运算符的具体介绍,大家可以阅读手册中的《PHP运算符》章节。
最后给大家