php程序员可能不了解的编程细节
生活随笔
收集整理的這篇文章主要介紹了
php程序员可能不了解的编程细节
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
mysql int 整形的最大值是多少?
有符號整形 2147483647
無符號整形 4294967295
mysql中的部分類型的值范圍
| tinyint | 1 | -128 到 127 | 0 到 255 |
| int | 4 | -2147483648 到 2147483647 | 0到4294967295 |
| bigint | 8 | -9223372036854775808 到9223372036854775807 | 0到18446744073709551615 |
mysq int(100) 最大能存多大的數值?占用多少字節
這里的100只是顯示寬度,并不是能存儲100位的數字,
數值的范圍只能在mysql定義的int的范圍.
只要是設置的是int類型,不管是int(1) 還是int(10) 都占用4個字節.
占用字節都是固定的.
顯示寬度是什么可以自行查詢.
當字段設置為int(2)的時候,也能插入200這個數字.
各種類型的范圍可以查看文檔,
mysql的各種類型的范圍是按照國際SQL標準制定的.
php int 最大值是多少?
和平臺有關,整形溢出會自動轉換為浮點型
$n = 33000000000000000000000000000000; var_dump($n); var_dump(intval($n)); var_dump(PHP_INT_MAX); var_dump(intval(9223372036854775807)); var_dump(intval(9223372036854775808)); var_dump(intval(9223372036854775809)); var_dump(0x123); var_dump(0.1+0.7); var_dump(intval((0.1+0.7)*10)); var_dump(intval(0.8*10)); //輸出結果 float(3.3E+31) int(1517713074423857152) int(9223372036854775807) int(9223372036854775807) int(-9223372036854775808) int(-9223372036854775808) int(291) float(0.8) int(7) int(8)絕不要將未知的分數強制轉換為 integer,這樣有時會導致不可預料的結果。
計算機不會精確的表示小數.只是近似值,
小數從十進制進制轉換成二進制失去了精確,只是近似值.
原因是計算機按照IEEE 757 行業標準表示浮點數.
這篇別人寫的文章有介紹
javascript小數計算同樣失去精確
0.2+0.4 0.60000000000000010.1+0.7 0.7999999999999999php不會自動轉換為數組
$a = ‘car’; // $a is a string
$a[0] = ‘b’; // $a is still a string
echo $a; // bar
上面的結果仍然是字符串bar
總結
了解計算機原理 ,
各種協議,
各種標準.
完整的閱讀各種語言的手冊,
這些是我們需要做的.是減少程序bug的一大利器.
先寫到這里,更多內容隨時補充
總結
以上是生活随笔為你收集整理的php程序员可能不了解的编程细节的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 瑞祥商联卡在哪可以用
- 下一篇: 小米计划2024年出车 造车新势力你追我