php学习之旅第二天

注:布尔类型不能使用echo查看!!!

应使用var_dump()结构查看

用法:var_dump(变量1,变量2…);

1.数据类型转换:php中有两种数据类型的转换方式

1.自动转换:系统根据需求自己判定,自己转换(用的比较多,效率低);
2.强制转换:又叫手动转换,根据自己需要的目标类型转换;
强制转换规则:在变量之前加一个括号,在括号里写上需要转换的目标类型;

2. 其他类型转数值的说明:

1.布尔类型true为1,false为0;

2.字符串转数值有自己的规则

1.以字母开头的字符串,永远为0;
2.以数字开头的字符串,取到碰到字符串为止(不会同时包含两个小数点);

3.类型判断:通过一组类型判断函数判断变量,最终返回的这个变量所保存的数据类型

4. 判断函数:是一组以is_开头后面跟类型名字的函数,相同返回true,反之返回false: is_xxx(变量名)

5.其他获取和设定变量类型函数:

1.gettype(变量名):获取类型,得到的是该类型对应的字符串;
2.settype(变量名,类型):设定数据类型,与强制转换不同;

注:

     1.强制转换(类型)变量名是对数据值复制的内容进行处理(不会处理实际存储的内容);
     2.settype会直接改变数据本身;

6.进制类型

  1. 10进制:$a = 110;
  2. 二进制:$a = 0b + 数字;
  3. 八进制: $a = 0 + 数字;
  4. 十六进制: $a = 0x + 数字;
注:默认PHP数值输出自动转换为十进制输出;
进制:
  1. 10进制:能够出现的数字:1~9,逢10进1;
  2. 2进制:能够出现的数字:0,1,逢2进1;
  3. 8进制:能够出现的数字:1~7,逢8进1;
  4. 16进制:能够出现的数字:1~9,a ~f,a表示10,以此类推,逢16进1;

7.进制转换:

1.手动转换:

不管结果如何,需补足32位,在前面补0;

  1. 10进制转2进制:除2倒取余法;
  2. 10进制转2进制:取出最大的2的N次方,从二进制的右侧开始,按照对应的指数位置次位置补1,没有补0;
  3. 2进制转10进制:从右侧开始,将对应的第几位作为2的指数,并将所有的结果相加;
2.自动转换:
  1. decbin:10转2;
  2. bindec:2转10;
  3. decoct:10转8;
  4. octdec:8转10;
  5. dechex:10转16;
  6. hexdec:16转10;

8. 浮点类型:小数类型以及超过整型所能存储范围的整数(不保证精度),精度范围在15个有效数字左右

  1. 浮点型定义: $f = 1.23, $f = 1.23e10(e表示底10);
  2. 浮点数存储:11111111 11111111 11111111 11111111
    加粗部分为10的指数,后面3个字节存储具体数值;
注:尽量不要用浮点数做精确判断:浮点数保存的数据不够精确,而且在计算机中凡是小数基本上存的不准确

9.布尔类型

  1. 仅由true和false组成,通常用于比价判断;
在进行某些数据判断时,需特别注意类型转换
  1. empty():判断数据的值是否为空(不是NULL,0算空会返回true);
  2. isset():判断数据存储的变量是否存在,存在返回true,不存在返回false;
发布了6 篇原创文章 · 获赞 8 · 访问量 94

猜你喜欢

转载自blog.csdn.net/qq_44128741/article/details/103498191