Mengabaikan pustaka khusus yang memungkinkan Anda bekerja dengan angka yang sangat besar, apa nilai int terbesar yang dapat Anda simpan di PHP?
117
Dari manual PHP :
Ukuran bilangan bulat bergantung pada platform, meskipun nilai maksimum sekitar dua miliar adalah nilai biasa (yang ditandatangani 32 bit). PHP tidak mendukung integer tak bertanda tangan. Ukuran bilangan bulat dapat ditentukan menggunakan konstanta PHP_INT_SIZE, dan nilai maksimum menggunakan konstanta PHP_INT_MAX sejak PHP 4.4.0 dan PHP 5.0.5.
Platform 64-bit biasanya memiliki nilai maksimum sekitar 9E18, kecuali pada Windows sebelum PHP 7, yang selalu 32 bit.
Build PHP 32-bit:
PHP 64-bit:
Jumlahnya inklusif.
Catatan: beberapa build 64-bit pernah menggunakan integer 32-bit, terutama build Windows lama dari PHP
Nilai di luar rentang ini diwakili oleh nilai titik mengambang, seperti juga nilai non-bilangan bulat dalam rentang ini. Penerjemah akan secara otomatis menentukan kapan peralihan ke titik mengambang ini perlu terjadi berdasarkan apakah nilai hasil kalkulasi tidak dapat direpresentasikan sebagai bilangan bulat.
PHP tidak memiliki dukungan untuk integer "unsigned", membatasi nilai maksimum semua integer ke kisaran integer "bertanda".
sumber
Ukuran PHP int tergantung pada platform :
PHP 6 menambahkan "longs" (64 bit ints).
sumber
(agak terlambat, tapi bisa berguna)
Hanya percaya PHP_INT_MAX dan PHP_INT_SIZE , nilai ini bervariasi pada arch Anda (32/64 bit) dan OS Anda ...
"Tebakan" atau "petunjuk" lainnya bisa jadi salah.
sumber
Ah saya menemukannya: 2 32 - 1 (2147483647)
http://au2.php.net/int
sumber
Itu tergantung pada OS Anda, tetapi 2147483647 adalah nilai yang biasa, menurut manual .
sumber
Meskipun
PHP_INT_*
konstanta ada untuk waktu yang sangat lama, nilai MIN / MAX yang sama dapat ditemukan secara terprogram dengan menggeser ke kiri hingga mencapai angka negatif:sumber
Ini tunduk pada arsitektur server tempat PHP berjalan. Untuk 64-bit,
print PHP_INT_MIN . ", ” . PHP_INT_MAX;
hasil-9223372036854775808, 9223372036854775807
sumber