php int是4個位元組,其確認方法就是使用常數PHP_INT_SIZE來取得INT類型在記憶體中佔多少個位元組,然後使用echo語句輸出常數PHP_INT_SIZE取得的位元組數即可。
本文操作環境:Windows7系統、PHP7.1版,Dell G3電腦
php int是幾個位元組?輸出INT型別在記憶體中佔多少個位元組?
新建一個333.php,如圖:
#新增php的界定符(),如圖所示:
聲明PHP與瀏覽器互動的檔案類型與編碼,如圖所示:
使用常數 PHP_INT_SIZE 來取得INT型別在記憶體中佔多少個位元組,如圖所示:
使用echo 語句輸出常數PHP_INT_SIZE 取得的位元組數,如圖所示:
執行網頁,在瀏覽器上顯示取得到的結果,如圖所示:
section id="smaller-text-left-7">至此,本教學結束!
至此,本教學結束!
內容擴充
php中int型別在不同平台所佔不同位元組數理解
1.在不同平台上佔位元組數與最大值
2.為什麼在不同的平台上int型別所佔字節數有差異呢
#不管什麼類型,編譯型語言都會把源碼編譯成機器碼,由於不同平台暫存器位寬不一樣, 所以有了自己對int的規定, 導致int 這個資料型別比較特殊,具體分配的位元組數與機器字長和編譯器有關。但一般等於機器暫存器位寬(64位元平台除外,預設為4位元組),如在32位元平台上(所謂32位元平台是指通用暫存器的資料寬度是32)編寫程式碼,int 型別分配4個字節,而在16位元平台是則分配2個位元組。編譯器是把程式碼轉換成機器碼的軟體,如果他願意,可以把int轉換成256位元的,只不過會增加機器的複雜度,降低可移植性。
3.平台
個人把這三者合起來考慮(CPU OS Compiler)是因為:1、64位元機器也可以裝32位元系統(x64裝XP) ;2、32位元機器上可以有16/32位元的編譯器(XP上有tc是16位元的,其他常見的是32位元的);3、即使是32位元的編譯器也可以弄出64位的integer來(int64)。以上這些是基於常見的wintel平台,加上我們可能很少機會接觸的其它平台(其它的CPU和OS),所以個人認為所謂平台的概念是三者的組合。雖然三者的長度可以不一樣,但顯然相互配合(即長度相等,32位的CPU 32位的OS 32位的Compiler)所發揮的能量最大。另外一個主題,如果只是從抽象的層面來看,每個程式有的只是虛擬的運算環境,可以不必考慮實際的環境,只需要了解虛擬環境的情況就可以了,這在不考慮移植性或非底層程式設計的時候是很有幫助的,這樣可以讓你專注在你的邏輯而不是實現
推薦學習:《PHP影片教學》
以上是php int是幾個位元組的詳細內容。更多資訊請關注PHP中文網其他相關文章!