php入门变量之数字
在介绍变量时,我明确指出PHP具有整型和浮点型(小数)数字类型。但是,依据我的经验,这两种类型都可以归类到一般的数字之下(在极大程度上是这样的)。
下面列举下PHP中有效的数字类型的变量:
8 3.14 10980843985 -4.2398508 4.4e2
注意:这些值永远不会用引号括起来(如果这样做,它们就是含有数值的字符串,在连接字符串例子中就有一个这样的例子),也不能用逗号来表示千位分隔符(千位分隔符例子: 20,943)。
处理数字常用的两个函数:
round()用于把小数四舍五入为最接近的整数;或者把小数四舍五入到指定的位数。
number_format()用于把一个数字转换成更常见的表示形式,用逗号作为千位分隔符;还可以设置小数点的指定位数。
<?php $n = 3.14; $n = round ($n); //把小数四舍五入结果为:3 $n = 3.142857; $n = round ($n, 3); //把小数四舍五入到指定的位数:3.143 $n = 20943; $n = number_format ($n); //用逗号作为千位分隔符结果为:20,943 $n = 20943; $n = number_format ($n, 2); //用逗号作为千位分隔符同时设置小数点的指定位数:20,943.00 ?>
有兴趣的人可以自己打印结果,但有一点要注意,要把各个结果分开来,不然打印的各种结果会连在一起,这算不算是一点点小考验???
================================================================================
下面我们就来做一个实战例子把:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>单引号</title> </head> <body> <?php // 设置必要要的变量: $quantity = 30; // 出售30件产品. $price = 119.95; // 单价. $taxrate = .05; // 5%的发票税. // 计算总额: $total = $quantity * $price; $total = $total + ($total * $taxrate); // 格式化总额: $total = number_format ($total, 2); // 打印结果: echo '<p>你所出售的 <b>' . $quantity . '</b> 件产品,成本单价为 <b>$' . $price . '</b> . 加上发票税,总额为 <b>$' . $total . '</b>.</p>'; ?> </body> </html>
为了能打印出HTML 、美元符号以及变量的组合,使用单引号括住文本并用连接符连接变量。同时还有另一个打印方式(双引号),这放到php入门单引号与双引号区别来说。
许多数学运算符还具有相应的赋值运算符,从而允许简写赋值语句。下面的一行语句:
$total = $total + ($total * $taxrate); 可以重写为: $total += ($total * $taxrate);
=============================================================================
下面我们就来看看和数字相关的操作符知识点吧(自己大概看下,了解即可,其实就是和我们上学时候学数学一样,了解运算法则,对于有兴趣的同学可以百度谷歌具体用法)
操作符:操作符是用来对数组和变量进行某种操作运算的符号。
1、算术操作符
操作符 |
名称 |
示例 |
+ |
加 |
$a+$b |
- |
减 |
$a-$b |
* |
乘 |
$a*$b |
/ |
除 |
$a/$b |
% |
取余 |
$a%$b |
2、复合赋值操作符
操作符 |
使用方法 |
等价于 |
+= |
$a+=$b |
$a=$a+$b |
-= |
$a-=$b |
$a=$a-$b |
*= |
$a*=$b |
$a=$a*$b |
/= |
$a/=$b |
$a=$a/$b |
%= |
$a%=$b |
$a=$a%$b |
.= |
$a.=$b |
$a=$a.$b |
3、比较运算符
操作符 |
名称 |
使用方法 |
= = |
等于 |
$a= =$b |
= = = |
恒等 |
$a= = =$b |
!= |
不等 |
$a!=$b |
!= = |
不恒等 |
$a!= =$b |
<> |
不等 |
$a<>$b |
< |
小于 |
$a<$b |
> |
大于 |
$a>$b |
<= |
小于等于 |
$a<=$b |
>= |
大于等于 |
$a>=$b |
注:恒等表示只有两边操作数相等并且数据类型也相当才返回true;
例如:0==0" 这个返回为true,因为操作数相等;
0==="0" 这个返回为false,因为数据类型不同。
4、逻辑运算符
操作符 |
使用方法 |
使用方法 |
说明 |
! |
非 |
!$b |
如果$b是false,则返回true;否则相反 |
&& |
与 |
$a&&$b |
如果$a和$b都是true,则结果为true;否则为false |
|| |
或 |
$a||$b |
如果$a和$b中有一个为true或者都为true时,其结果为true;否则为false |
and |
与 |
$a and $b |
与&&相同,但其优先级较低 |
or |
或 |
$a or $b |
与||相同,但其优先级较低 |
操作符"and"和"or"比&&和||的优先级要低。
5、三元操作符
Condition ? value if true : value if false
示例:($grade>=50 ? "Passed" : "Failed")
6、错误抑制操作符:
$a=@(57/0);
除数不能为0,会出错,所以加上@避免出现错误警告。
7、数组操作符
操作符 |
使用方法 |
使用方法 |
说明 |
+ |
联合 |
!$b |
返回一个包含了$a和$b中所有元素的数组 |
= = |
等价 |
$a&&$b |
如果$a和$b具有相同的元素,返回true |
= = = |
恒等 |
$a||$b |
如果$a和$b具有相同的元素以及相同的顺序,返回true |
!= |
非等价 |
$a and $b |
如果$a和$b不是等价的,返回true |
<> |
非等价 |
如果$a和$b不是等价的,返回true |
|
!= = |
非恒等 |
$a or $b |
如果$a和$b不是恒等的,返回true |
操作符的优先级和结合性:
一般地说,操作符具有一组优先级,也就是执行他们的顺序。
操作符还具有结合性,也就是同一优先级的操作符的执行顺序。这种顺序通常有从左到右,从右到左或者不相关。
下面给出操作符优先级的表。最上面的操作符优先级最低,按着表的由上而下的顺序,优先级递增。
操作符优先级
结合性 |
操作符 |
左 |
, |
左 |
Or |
左 |
Xor |
左 |
And |
右 |
|
左 |
= += -= *= /= .= %= &= |= ^= ~= <<= >>= |
左 |
?: |
左 |
|| |
左 |
&& |
左 |
| |
左 |
^ |
左 |
& |
不相关 |
= = != = = = = != = |
不相关 |
<<= >>= |
左 |
<< >> |
左 |
+ - . |
左 |
* / % |
右 |
! ~ ++ -- (int)(double)(string)(array)(object) @ |
右 |
[] |
不相关 |
New |
不相关 |
() |
为了避免优先级混乱,可以使用括号避开优先级。