浅谈PHP变量的8种类型以及弱类型
程序员文章站
2022-03-18 18:26:33
...
本篇文章小编将和大家谈谈PHP变量的8种类型以及弱类型,感兴趣的朋友可以了解一下。
一,PHP变量的8个类型
四种标量类型:
- boolean (布尔型)
- integer (整型)
- float (浮点型, 也称作 double)
- string (字符串)
两种复合类型:
- array (数组)
- object (对象)
最后是两种特殊类型:
- resource (资源)
- NULL (NULL)
二,PHP弱类型
我们知道,PHP是一种弱类型的语言(初始化一个变量的时候,并不需要指定它的类型),但是前面提供了PHP变量的8种类型,这前后两句话似乎有点矛盾,我们要怎么理解PHP的类型呢
首先,PHP的底层是存在8个类型的。
其次,当你对一个变量初始化或赋值的时候,PHP的底层会自动识别即将赋予的值,然后设置该变量的类型。
再次,当你对两个变量进行逻辑判断的时候,PHP的底层会依照以下规则先进性类型转换再进行逻辑判断。
1,逻辑判断是算术运算符,加减乘(+-*),如果任何一个操作数是浮点数,则所有的操作数都被当成浮点数,结果也是浮点数。否则操作数会被解释为整数,结果也是整数,
2,逻辑判断是算术运算符,除(/),除法运算符总是返回浮点数。只有在下列情况例外:两个操作数都是整数(或字符串转换成的整数)并且正好能整除,这时它返回一个整数。
3,逻辑判断是算术运算符,取模(%),所有的操作位都被转换成整数,结果也是整数。
4,逻辑判断是算术运算符,取反(-),如果操作数是一个浮点数则结果也是浮点数,否则总是先把操作数转换成整数,结果也是整数。
5,逻辑判断是位运算符,所有的操作数都被转换成整数,结果也是整数。
6,逻辑判断是比较运算符,如果其中一个操作数是布尔值,则另外一个操作费会被转换为布尔值,如果一个操作数是浮点型,则另外一个操作数也会被转换为浮点型,其余情况,两个操作数都会被转换成整数。无论操作数是什么类型,比较运算符的结果总是为布尔值。
相关教程:PHP视频教程
以上就是浅谈PHP变量的8种类型以及弱类型的详细内容,更多请关注其它相关文章!