php学习day4---常量与数据类型

     今天我学习了php有关常量的知识和数据类型的知识

     下面是今天的学习内容:

一、常量

  1.常量定义

  常量是一个其中存储的数据不会也不应该改变的“标识符”。通常情况下,常量的定义有两种方法:

//第一种方法
//define(“常量名”,“常量值”);
define("HH","123");

//第二种方法
//const  常量名=常量值;
const  HH = 123;

  常量的取值方法:两种方法

//直接使用名字,或者通过constant()函数取值

//直接使用其名
    echo HH;        // HH = 123

//使用constant(“常量名”)函数,注意:常亮名是个字符串
    echo constant("HH");   // HH=123

   常量有以下几个特点:

    1.常量无需$来使用。

    2.常量的值不可以改变也不能销毁。

    3.具有超全局作用域。

    4.常量只能储存标量。

  在一个项目中,是由多个人员来共同开发,那么如何判断一个常量是否存在或被别人定义呢?

在这里,我们给出以函数,这个函数就是专门判断常量是不是存在的:

      defined(“常量”)

    如果存在,返回true,不存在,则返回false

  在php当中如果使用一个未定义的常量会报错,但是仍然会将该常量当有值。

  预定于常量

  预定义常量就是系统中预先定义好的常量,我们可以直接拿过来用,着种常量,有几百个,我们需要了解几个就可以了:

    M_PI:圆周率;

    PHP_OS:就是php运行所在的操作系统。

    PHP_VERSION:就是php的版本号。

    PHP_INT_MAX:php种的最大整数。

  魔术常量

    _FILE_:代表当前网页文件的完整物理路径

    _DIR_:代表当前网页文件所在的文件夹

    _LINE_:代表当前这个常量名所在的行号

 

二、数据类型

  php一共有8种数据类型。

  基本类型(标量类型)4种:

    整型:      int   integer

    浮点数:   float,double,real

    字符串:    string

    布尔类型: bool,boolean

  复合类型两种:

    数组:    array()

    对象:    object()

  特殊类型2种

    空类型:  null

    资源类型: resource

三、数据类型的方法

  1.整型:int   integer

   1).整型有四种写法

$n1 = 123;         //十进制
$n2 = 0123;       //八进制
$n3 = 0x123;     //16进制
$n4 = 0b1010;   //2进制

   2).10进制转换为其他进制方法

      decbin():结果返回的是该数字的2进制数字形式的字符串

      decoct():结果返回的是该数字的8进制数字形式的字符串

      dechex():结果返回的是该数字的16进制数字形式的字符串

 

   3).其他进制转换为10进制 

      bindec(字符串) 结果返回的是该2进制数字字符串对应的10进制数字

 

      octdec(字符串) 结果返回的是该8进制数字字符串对应的10进制数字

 

      hexdec(字符串) 结果返回的是该16进制数字字符串对应的10进制数字

 

  2.浮点数

    浮点数有两种写法:

      常规写法:  带小数点。   (123.456)

      科学计数法:  带特殊符号E。(123456E3)

    注意:浮点数不应该进行大小比较,因为所有的数字最终形式都是二进制,大多数浮点数的二进制都是不能准却表达的。当整数的运算结果超出整数最大范围,就会变成浮点数。

  3.字符串

  字符串的四中形式:

形式1:双引号字符串:
$str1 = “字符串内容.....”;

形式2:单引号字符串:
$str2 = ‘字符串内容.....’;

形式3:双引号定界符字符串:
$str3 = <<<”标识符A”
字符串内容....
标识符A;

形式4:单引号定界符字符串:
$str4 = <<<’标识符B’
字符串内容...
标识符B;

 

  四者区别:

   

 

   3.布尔类型(bool,boolean)

    其只有2个数据:truefalse

    布尔类型的一个常见应用情形是:对一个变量直接进行判断。

        0,   0.0,   “”,   “0”,   null,   array(),   false,   还有一个是“未定义的变量

 四、类型转换

   自由转换

     在任何运算中,如果需要某种类型的数据,而给出的数据不是该类型,通常都会发生自动转换:将该类型转换为目标需要的类型。如图:

  强制转换

    自动类型转换是由“运算符”或类似运算符的语句来决定的。强制类型转换,仅仅是一个简单的语法: 

 

      (int),  (float),  (string),  (bool),  (array),  (object)

 

    上述强制类型转换,并不改变该变量的本身数据或类型。对应,有一个语法是直接改变本的数据(及类型):

      

        settype( $变量名,  “目标类型”);

 

五、常见与数据类型相关的函数

    var_dump():                 打印变量的相关信息

    getType($变量):             获取数据类型,返回值是该类型名称的字符串

    setType($变量名,“目标类型”):       设置变量的数据类型,直接改变本的数据(及类型)

    is_*():                   判断一个变量是否是某种类型

    isset():                   判断变量是否为null或者是否存在

      empty():                  判断一个变量是否为空 “”,“0”,0,false,arry(),null都认为是空的,返回布尔值

 

    

 

 

 

    

 

 

 

 

 

    今天的笔记就写到这里,明天继续。

posted @ 2016-09-08 15:42  time呦_呦  阅读(240)  评论(0编辑  收藏  举报