PHP弱類型
阿新 • • 發佈:2018-10-22
min php dump 字符串類型 參考 數值 相等 false color
0x01 PHP中的兩種比較符號
1 <?php 2 var_dump(‘admin‘==0); //true 3 var_dump(‘1admin‘==1); //true 4 var_dump(‘admin1‘==1); //false 5 var_dump(‘adminm1‘==0); //true 6 var_dump(0e154 == 0e524); //false 7 var_dump(0 === ‘abdefg‘); //true 8 ?>
當我們使用‘ == ‘進行比較時,會將字符串類型轉換成數字型再進行比較,只比較轉換後的數值的大小
a.當字符串中不存在數字的時候會把字符串會轉換成數值0,參考第二行代碼。
b.當字符串的開始部分有合法數值時,會把該字符串轉換成該合法數值,參考第三行代碼。
c.當字符串存在合法數值時但合法數值不在開始部分,那麽字符串仍然會轉換成數值0,參考第四和五行代碼。
d.當字符串中包含‘e‘或‘E‘時,系統會將其識別為科學記數法,0^n均為0,參考第六行代碼。
當我們使用‘ === ‘進行比較時,會比較較二者的類型和數值。簡而言之, ‘===‘ 是一個全等符合,如果$a=== $b ,我們可以判斷a和b的數值和類型完全相等。
PHP弱類型