php弱类型变量比较
php弱类型变量是指,在声明一个变量时,我们不需要指明它保存的数据类型。
php数据类型:String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)。
- ==、!=:在进行比较的时候,会先将字符串类型转化成相同,再比较。
`<?php
var_dump("admin"==0); //true
var_dump("1admin"==1); //true
var_dump("admin1"==1) //false
var_dump("admin1"==0) //true
var_dump("0e123456"=="0e4456789"); //true
?> //上述代码可自行测试`
当一个字符串欸当作一个数值来取值,其结果和类型如下:如果该字符串没有包含'.','e','E'并且其数值值在整形的范围之内该字符串被当作int来取值,其他所有情况下都被作为float来取值,该字符串的开始部分决定了它的值,如果该字符串以合法的数值开始,则使用该数值,否则其值为0。
- =、!:在进行比较的时候,会先判断两种字符串的类型是否相等,再比较
<?php
var_dump("1e9"==1e9); //true
var_dump("1e9"===1e9); //false
var_dump(0==FALSE); //true
var_dump("0"==FALSE); //true
var_dump(0===FALSE); //false
?>
字符串 与 字符串:逐个字符比较对应ascII
字符串 与 整数:字符串首字符转整数,首字符为字符转为0;首字符为数字则检查下一位是否为数字…最后比较
<?php
var_dump("as"<1); //true
var_dump("as"<-1); //false
var_dump("20s"<21); //true
var_dump("22s"<21); //false
?>