加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_宿迁站长网 (https://www.0527zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

自学PHP笔记(二)PHP数据类型

发布时间:2022-09-13 15:14:31 所属栏目:PHP教程 来源:
导读:  PHP数据类型可支持以下8种类型: | 类型 | 说明 | |--|--| | string | 字符串 | |boolean|布尔值| |integer|整型| |float|浮点型| |array|数组| |object|对象| |resource|资源| |NULL|NULL|

  1. 基本类型
  PHP数据类型可支持以下8种类型: | 类型 | 说明 | |--|--| | string | 字符串 | |boolean|布尔值| |integer|整型| |float|浮点型| |array|数组| |object|对象| |resource|资源| |NULL|NULL|
 
  1. 基本类型
 
  基本类型也就是最基础的数据类型,用来表示比较简单、直接性的数据,基本类型有以下几个数据类型: |类型|说明| |-|-| |boolean(布尔值)|其值只有两个,一个是true,一个是false。多数用来判断事物的真假| |string(字符串)|其值包含计算机所能够显示的所有字符的集合,多数用来做说明性的字符| |integer(整型)|只包含整数,包含正整数和负整数| |float(浮点型)|包含整数和小数|
 
  1.1 boolean(布尔值)
 
  布尔值由true和false这两个值,所以是PHP种最简单的一种数据类型,也是使用最多的一个数据类型,而且布尔值的两个值可以直接使用,不区分大小写,在设置变量时可以直接将布尔值中的两个值进行赋值就可以,通常是配合流程控制进行使用的。 【示例1】常规设置变量为布尔值
 
  php
      $a = true;  \\设置变量 a 的值为真
      $b = false; \\设置变量 b 的值为假
  ?>
  【示例2】与流程控制语句配合使用,判断事物真假
 
  php
      $a = true;
      $b = false;
      if ($a == $b) {
          echo "值相等"; #结果为真输出
      }else{
          echo "值不相等";    #结果为假输出
      }
  ?>
  输出结果为:值不相等 【示例3】使用运算符返回布尔值
 
  php
      $name = "张三";
      if ($name == "张三"){
          echo "他的名字是$name";  #如果判断运算结果为真则输出
      }
  ?>
  输出结果为:他的名字是张三 【示例4】常用语句
 
  php
      if ($a = true ){
          var_dump($a);
      }
  ?>
  输出结果为:bool(true),上面出现的 var_dump()是用来打印输出结果并带上数据类型 上面那种判断变量真假的方式可直接写成下面简单的方法:
 
  php
      if ($a) {
          var_dump($a);
      }
  ?>
  【注意】上面$a变量我的赋值没有写,不给变量复制,变量默认为NULL
 
  1.2 整型
 
  整型数值只包含整数,其中整型也可以使用八进制、十六进制、二进制表上,负数时前面可加可选符号-和+。 【示例1】八进制的整数,在表示数字前需要在数字前面加0
 
  php
      $a = 0456;
      var_dump($a);
  ?>
  输出结果为:int(302),八进制456转化为十进制是302 【示例2】十六进制的整数,在表示数字前需要在数字前面加0x
 
  php
      $a = 0x456;
      var_dump($a);
  ?>
  输出结果为:int(1110),十六进制456转化为十进制是1110 【示例3】二进制的整数,在表示数字前需要在数字前加0b
 
  php
      $a = 0b1101;
      var_dump($a);
  ?>
  输出结果为:int(13),二进制数1101转换为十进制是13 【示例4】打印负数,只需正数前面加-即可
 
  php
      $a = -100;
      var_dump($a);
  ?>
  输出结果不变,显示int(-100)
 
  【番外】整数一般最大值是二十亿,也就是32位字符,64位平台最大值是9E18,查看支持的最大值和最小值可以采用PHP_INT_MAX和PHP_INT_MIN进行查看 【示例1】查看支持最大的整数
 
  php
      var_dump(PHP_INT_MAX);
  ?>
  我这输出结果是int(9223372036854775807),你们自己算算吧是多少 【示例2】查看支持最小的整数,这个只有PHP7.0版本之后支持哟
 
  php
      var_dump(PHP_INT_MIN);
  ?>
  这个最小整数的输出值就不用我说了吧,算了给你们看看结果吧int(-9223372036854775808) 【注意】在输出八进制时,如果出现超过8的数值,PHP7.0版本之前会自动忽略,但是7.0之后会直接报错哦 【示例】
 
  php
      $a = 01239;
      var_dump($a);
  ?>
  报错信息如下:
 
  【注意】如果给出的整数值超出了整数范围,会被解释为浮点数,同样如果运算结果超出了整数范围,也会解释为浮点数哟! 【示例】运算结果超出整数范围
 
  PHP
      $num1 = 45678901111;
      $num2 = 89099899111;
      var_dump($num1 * $num2);
  ?>
  输出结果为:float(4.0699854804914E+21)
 
  1.3 浮点型
 
  浮点型整数也叫实数,表示方式可以采用正常格式和科学技术法格式进行 【示例1】正常格式
 
  php
      $a = 1.234;
      var_dump($a);
  ?>
  输出结果为:float(1.234) 【示例2】科学技术格式
 
  php
      $a = 1.2e3;
      $b = 8E - 10;
      var_dump($a);
      var_dump($b);
  ?>
  输出结果为:float(1200) float(8.0E-10)
 
  1.4 字符串
 
  字符串就是由一系列的字符组成,一个字符就是一个字节,通过单引号、双引号、Heredoc语法结构和Nowdoc语法结构定义字符串。
 
  单引号 采用单引号定义字符串就是使用单引号把字符包围起来,如果想要输出单引号需要在单引号添加转义符\,如果是在结尾想输出反斜杠就需要在字符前添加转义符\\,如果在其他字符前面添加转义符\或者\\会直接输出转义符。 【示例1】正常输出单行字符串
 
  php
  $a = '我是一个字符串';
  var_dump($a);
  ?>
  输出结果为:string(21) "我是一个字符串" 【示例2】正常输出多行字符串
 
  php
  $a = '我是多行
  字符串';
  var_dump($a);
  ?>
  输出结果为:tring(23) "我是多行 字符串" 【示例3】在字符串中显示单引号
 
  php
  $a = 'I like \'PHP\'';
  var_dump($a);
  ?>
  输出结果为:string(12) "I like 'PHP'" 【示例4】在字符串中输出反斜杠,多用于文件路径
 
  php
  $a = 'D:\\php\index.php';
  var_dump($a);
  ?>
  输出结果为:string(16) "D:\php\index.php" 【注意】在使用单引号进行定义字符时,如果字符中含有变量,变量将不会被解释,但是双引号定义字符串时变量可以被解释的 【示例】在字符串中引用变量
 
  php
  $a = '张三';
  $b = '我叫$a';
  $c = "我叫$a";
  var_dump($b);
  var_dump($c);
  ?>
  输出结果为:$b的返回结果为string(8) "我叫$a",$c的返回结果为string(12) "我叫张三" 2. 双引号 采用双引号定义字符串,将要定义的字符型采用"", 使用双引号定义字符串时,如果字符串中存在变量则变量将会被解释,不会显示变量名,PHP将对这些特殊字符串进行解析,这些字符串都要通过转义符来显示。 转义符列表: |转义字符| 意义 |ASCLL码值(十进制) | |--|--|--| | \a | 响铃(BEL) | 007 | |\b|退格(BS),将当前位置移到前一列|008| |\f|换页(FF),将当前位置移到下页开头|012| |\n|换行(LF),将当前位置移到下一行开头|010| |\r|回车(CR),将当前位置移动到本行开头|013| |\t|水平制表(HT)(跳到下一个TAB位置)|009| |\v|垂直制表(TV)|011| |\\|代表一个反斜杠字符"\"|092| |\'|代表一个单引号(撇号)字符|039| |\"|代表一个双引号字符|034| |\?|代表一个问好|063| |\0|空字符(NULL:)|000| |\ddd|1到3位八进制数所代表的任意字符|三位八进制| |\xhh|1到2位十六进制所代表的任意字符|二位十六进制| 【注意】要注意\和/,此处时不可替换的 【示例1】双引号定义字符串时输出$符号
 
  php
      echo "\$";
  ?>
  【示例2】双引号定义字符串时输出双引号
 
  php
      echo " My Name is \"李明\"";
  ?>
  输出结果为:My Name is "李明" 3. Heredoc语法结构 采用Heredoc结构 string(6) "张三" ["age"]=> string(3) "11" } 【实例3】创建只有值得数组
 
  php
  $array = array("张三","李四","王五");
  var_dump($array);
  ?>
  输出结果为:array(3) { [0]=> string(6) "张三" [1]=> string(6) "李四" [2]=> string(6) "王五" } 【提示】不设置索引得话,数组会自动添加一个索引,这个索引是由数字组成得,第一个从零开始 【实例4】读取数组时,可以使用索引名用方括号包围得方式进行读取
 
  php
  $array = array(
      "name" => "张三",
      "age"  => "11",
  );
  var_dump($array['name']);
  ?>
  输出结果为:string(6) "张三" 当然也可以用数组得索引进行赋值得例如:
 
  php
  $array = array(
      "name" => "张三",
      "age"  => "11",
  );
  $array['name'] = "李四";
  var_dump($array);
  ?>
  输出结果为:array(2) { ["name"]=> string(6) "李四" ["age"]=> string(2) "11" }
 
  2.2 对象
 
  对象是面向对象编程得基础,在PHP中使用new进行实例化php格式,也就是创建对象 【实例】创建对象
 
  php
  class test{
      function fu(){
          echo "test";
      }
  }
  $test = new test;
  $test->fu();
  ?>
  输出结果为:test
 
  3. 特殊类型
 
  特殊得数据类型包含资源和空值两种 |类型|说明| |-|-| |resource(资源)|这个也是就指的外部资源,如上传的文件等| |NULL(空值)|指的是当没有赋值变量时则为空|
 
  3.1 资源
 
  资源数据类型变量保存有打开文件、数据库连接、图形画布区域等的特殊句柄,不建议将其他数据类型转换为资源类型,多数使用在文件上传,下载,数据库等场景 资源数据类型自动开启资源回收机制,随时释放不再使用的资源,以免程序占用服务器的大量资源,无需手动释放 后续为大家记录资源的使用方法吧。
 
  3.2 NULL
 
  NULL即空值,也是就是说变量并没有进行赋值,其值时一个比较特殊的值为null,该值不区分大小写,变量为空值时会存在设置为空、变量没有被赋值和使用unset()函数处理过的变量 【示例1】设置变量值为空
 
  php
  $test = null;
  var_dump($test);
  ?>
  输出结果为:NULL 【示例2】在不设置变量时输出变量值
 
  php
  var_dump($a);
  ?>
  输出结果为:NULL 【提示】使用unset()函数将会摧毁变量,使用is_null()函数可以判断变量是否为空 【实例3】判断变量是否为空
 
  php
  $a = "张三";
  if (is_null($a)){
      echo "变量为空";
  }else{
      echo "变量不为空";
  }
  ?>
  输出结果为:变量不为空
 

(编辑:云计算网_宿迁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!