Bagaimana untuk mengalih keluar tatasusunan dan menetapkan semula subskrip dalam php

PHPz
Lepaskan: 2023-04-20 15:09:37
asal
768 orang telah melayarinya

Dalam PHP, kita selalunya perlu melakukan beberapa pemprosesan pada tatasusunan. Salah satu tugas biasa dalam pemprosesan ialah "mengalih keluar tatasusunan dan menetapkan semula subskrip". Artikel ini akan menyelidiki cara untuk mencapai tugas ini menggunakan PHP.

  1. Mengalih keluar Tatasusunan

Mula-mula, mari lihat cara mengalih keluar elemen daripada tatasusunan. Dalam PHP, kita boleh menggunakan fungsi unset() untuk memadamkan nilai dalam tatasusunan seperti berikut:

$arr = array(1, 2, 3, 4, 5);
unset($arr[2]);
Salin selepas log masuk

Dalam contoh di atas, kami telah memadamkan elemen ke-3 dalam tatasusunan. Selepas melaksanakan arahan ini, tatasusunan menjadi:

[0 => 1, 1 => 2, 3 => 4, 4 => 5]
Salin selepas log masuk

Seperti yang anda lihat, elemen 3 telah dipadamkan, tetapi indeks tatasusunan belum ditetapkan semula.

  1. Tetapkan semula indeks

Seterusnya, mari kita lihat cara untuk menetapkan semula indeks. Dalam PHP, terdapat dua cara untuk mencapai ini:

Kaedah 1: array_values()

Menggunakan fungsi array_values() akan mengembalikan tatasusunan baharu dan indeks tatasusunan baharu ini akan menjadi dari 0 bermula. Berikut ialah contoh kod:

$arr = array(1, 2, 3, 4, 5);
unset($arr[2]);
$arr = array_values($arr);
Salin selepas log masuk

Selepas melaksanakan kod di atas, nilai $arr ialah:

[0 => 1, 1 => 2, 2 => 4, 3 => 5]
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah 2: Gelung melalui

satu lagi Satu cara adalah untuk menggelung melalui tatasusunan dan melaksanakan fungsi unset(). Pendekatan ini tidak mencipta tatasusunan baharu dan oleh itu berjalan dengan lebih cekap. Berikut ialah kod sampel:

$arr = array(1, 2, 3, 4, 5);
unset($arr[2]);
foreach ($arr as $key => $value) {
    $arr[$key] = $value;
}
Salin selepas log masuk

Selepas melaksanakan kod di atas, nilai $arr ialah:

[0 => 1, 1 => 2, 2 => 4, 3 => 5]
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Gelung foreach di sini melelaran melalui tatasusunan dan menggunakan $key variable Tetapkan semula indeks setiap elemen tatasusunan.

  1. Pelaksanaan Penuh

Kini kami akan menggabungkan kedua-dua langkah ini supaya kami mendapat program PHP lengkap yang boleh mengalih keluar elemen tatasusunan dan menetapkan semula indeksnya dengan cekap. Berikut ialah kod sampel lengkap:

function delete_and_reset(&$arr, $delete_key) {
    unset($arr[$delete_key]);
    foreach ($arr as $key => $value) {
        $arr[$key] = $value;
    }
    return $arr;
}

$arr = array(1, 2, 3, 4, 5);
$arr = delete_and_reset($arr, 2);
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan fungsi yang dipanggil delete_and_reset(). Ia menerima dua parameter: tatasusunan untuk beroperasi dan kunci untuk memadam.

Dalam fungsi, kita mula-mula menggunakan fungsi unset() untuk memadamkan elemen dengan kunci yang ditentukan, kemudian gunakan foreach() untuk menggelungkan melalui tatasusunan dan menggunakan pembolehubah $key untuk menetapkan semula indeks setiap elemen .

Akhir sekali, kami mentakrifkan tatasusunan dalam program utama dan memanggil fungsi delete_and_reset() untuk memprosesnya. Selepas melaksanakan kod di atas, nilai $arr ialah:

[0 => 1, 1 => 2, 2 => 4, 3 => 5]
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
  1. Kesimpulan

Sekarang anda tahu cara menanggalkan tatasusunan dan menetapkan semula subskrip menggunakan PHP . Ini adalah tugas yang sangat berguna yang akan digunakan dengan kerap dalam kerja pembangunan PHP anda. Sama ada anda seorang pemula atau pembangun profesional, menguasai kemahiran ini adalah satu kemestian.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar tatasusunan dan menetapkan semula subskrip dalam php. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan