Berapa Lama String PHP Boleh?

Susan Sarandon
Lepaskan: 2024-11-01 09:43:02
asal
137 orang telah melayarinya

How Long Can a PHP String Be?

Apakah Sempadan Panjang Rentetan PHP?

Mengenai had panjang rentetan dalam PHP, terdapat pelbagai syarat berdasarkan versi PHP dan konfigurasi sistem.

PHP 7.0.0 dan Kemudian (64-bit)

Dalam binaan 64-bit ini, panjang rentetan tidak mempunyai sekatan khusus, memberikan kapasiti yang besar untuk menyimpan sejumlah besar teks.

PHP 5. x dan Terdahulu

Sebelum PHP 7.0.0 dan pada binaan 32-bit, rentetan terhad kepada maksimum 2GB, kerana kod dalaman mewakili panjangnya dalam integer 32-bit.

Kekangan Peruntukan Memori

Selain daripada had panjang rentetan, PHP skrip juga menghadapi had pada peruntukan memori untuk pembolehubah. Had ini dikawal oleh arahan memory_limit dalam php.ini. Secara lalai, ia adalah 128MB dalam PHP 5.2 dan 8MB dalam versi terdahulu.

Melebihi had ini boleh mengakibatkan ralat maut. Walau bagaimanapun, menetapkannya kepada -1 membolehkan PHP menggunakan memori sebanyak yang dibenarkan oleh sistem pengendalian, sementara masih tertakluk kepada had perkakasan.

Contoh Praktikal

Untuk menggambarkan kekangan ingatan, pertimbangkan skrip dengan had memori 1MB:

<code class="php">ini_set('memory_limit', 1024*1024);

// allocating 255KB string
$str = str_repeat('a', 255*1024);
print_r($str);

// exceeded memory limit, results in fatal error
$str = str_repeat('a', 256*1024);
print_r($str);</code>
Salin selepas log masuk

PHP pada mulanya memperuntukkan 768KB untuk operasi asas, meninggalkan skrip dengan 232KB ruang yang boleh digunakan. Memperuntukkan rentetan 255KB mengisi memori yang tersedia. Cuba memperuntukkan rentetan 256KB melebihi had dan mencetuskan ralat maut.

Atas ialah kandungan terperinci Berapa Lama String PHP Boleh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!