php学习第一章:PHP基础语法(二)之PHP运算

一、位运算

  位运算前需要把要运算的数转化为二进制,然后再进行计算

  (1)与运算&

    与运算时,除非两个同为1才为1,一个不为1就不为1

    18&31

    技巧:二进制与十进制之间的换算

      十进制转为二进制:

        将十进制数除以2,一直除到不能除为止,把其余数倒序放置即可

            

被除数 除数 余数
2 18 0
2 9 1
2 4 0
2 2 0
  1 1

 

  

 

 

    ↑  18转化成二进制为:10010

被除数 除数 余数
2 31 1
2 15 1
2 7 1
2 3 1
2 1 1

  

 

 

 

  ↑   31转化成二进制为:11111

    10010

      11111

   ————

   10010 结果为10010->转化为十进制为18

    技巧:十进制转二进制:

            如10010:它共有五位,按照,小数点的数法一般从后面往前面数,从第0位开始:

                依次是第0位为0,第一位为1,第二位至三位都为0,第四位为1,所以 10010转化为十进制为:1*24+0*23+0*22+1*21+0*20=16+2=18

      如11111 = 1*24+1*23+1*22+1*21+1*20=16+8+4+2+1=31

(2)或运算|

  或运算是只要两个有一个为1就是1

  18|31

      10010

  11111

    ————

  11111

     18|31 = 31

二、数学函数

  php数学函数很多,在此只讲解几个常用的

  (1)取整函数

    floor($n);                //去小数取整,无论小数有多大,一律去掉小数点

    如:floor(4.8);        得到的值是4

    ceil($n);                 //进一法取整,无论小数有多大,都让整数部分加1

    如:ceil(4.1);       得到的值是5

     (2)round($n,$point);     //$n为一个数,$point为保留几位小数,默认不保留小数,四舍五入取整

    如:round(4.8);        //结果为5

      round(4.5);       //结果为5

      round(4.49)     //结果为4

      round(4.36,1)  //得到结果为4.4

   (3)取随机数

    round($min,$max);   //如果设定最小值与最大值,则在这两个数之间取随机数(即不大于最大值和不小于最小值的这个范围内取随机数)

               //如果不设定最小值与最大值,则取任易一个随机数

三、自增

  如:

  $i=1;

  $i++;   //现在$i的值就变成2,

      ++$i;  //现在$i的值就变成3

  $i++与++$i的区别

  $i =1;

  $j = $i++;       //是先将$i的值赋给$j,$j的值为1,然后$i自增,变成2

  $j = ++$i;       //是先将$i的值自增,然后再赋给$j,所以$i和$j的值都是2

 

posted @ 2012-11-15 13:32  遗梦诗心  阅读(207)  评论(0编辑  收藏  举报