Rumah >pembangunan bahagian belakang >masalah PHP >Apakah output tatasusunan php apabila ia keluar dari sempadan?

Apakah output tatasusunan php apabila ia keluar dari sempadan?

PHPz
PHPzasal
2023-04-23 09:11:32785semak imbas

Dalam PHP, tatasusunan di luar sempadan mungkin menyebabkan ralat yang tidak dapat diramalkan. Apabila anda cuba mengakses elemen tatasusunan yang tidak wujud, PHP akan membuang ralat tahap "Notis" dan menggesa tatasusunan itu di luar batasan. Khususnya, mesej ralat PHP akan mengandungi dua maklumat penting: nama tatasusunan dan nilai indeks.

Contohnya, tatasusunan $arr dalam kod berikut mempunyai 4 elemen, bermula dari 0 dan naik kepada 3. Apabila kita cuba mengeluarkan elemen ke-5, PHP melemparkan ralat di luar sempadan.

$arr = array("A", "B", "C", "D");
echo $arr[4]; // 数组越界,输出 Notice: Undefined offset: 4

Selepas melaksanakan kod di atas, PHP akan mengeluarkan maklumat berikut:

Notice: Undefined offset: 4 in /path/to/your/php/file.php on line 2

Mesej ralat ini memberitahu kami bahawa program cuba mengakses elemen tatasusunan yang tidak wujud. Secara khusus, nilai indeks elemen ialah 4, tetapi tatasusunan hanya mengandungi 4 elemen bermula dari 0. Oleh itu ralat di luar sempadan.

Jadi, apakah yang perlu kita lakukan jika kita ingin mengelakkan ralat di luar sempadan? Cara terbaik ialah menyemak panjang tatasusunan dan sama ada nilai indeks yang ingin kami akses adalah sah sebelum mengakses elemen tatasusunan. Secara khusus, kita boleh menggunakan fungsi count() untuk mendapatkan panjang tatasusunan, dan kemudian semak sama ada nilai indeks kurang daripada nilai panjang. Contohnya:

$arr = array("A", "B", "C", "D");
$index = 4;

if ($index < count($arr)) {
  echo $arr[$index];
} else {
  echo "超出数组长度!";
}

Dalam kod di atas, kita mula-mula menggunakan fungsi count() untuk mendapatkan panjang tatasusunan, dan kemudian menentukan sama ada nilai indeks kurang daripada panjang tatasusunan. Jika ya, kami mengeluarkan elemen tatasusunan yang sepadan jika tidak, kami mengeluarkan mesej segera.

Apabila menulis atur cara PHP, terutamanya apabila berurusan dengan tatasusunan, anda perlu memberi perhatian kepada berlakunya ralat di luar sempadan. Walaupun ralat ini tidak menyebabkan masalah yang serius, ia boleh mengganggu pelaksanaan biasa program dan menyebabkan masalah yang tidak perlu. Oleh itu, secara munasabah mengelakkan ralat di luar sempadan adalah salah satu kemahiran asas yang perlu dikuasai oleh pengaturcara.

Atas ialah kandungan terperinci Apakah output tatasusunan php apabila ia keluar dari sempadan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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