Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengalih keluar nilai kunci yang ditentukan daripada tatasusunan php

Bagaimana untuk mengalih keluar nilai kunci yang ditentukan daripada tatasusunan php

PHPz
PHPzasal
2023-04-24 15:48:481806semak imbas

Dalam PHP, tatasusunan ialah jenis data yang sangat biasa, yang biasanya digunakan untuk menyimpan sekumpulan data yang berkaitan. Apabila memproses tatasusunan, kadangkala kita perlu mengalih keluar nilai kunci yang ditentukan dalam tatasusunan, yang sangat biasa dalam pembangunan sebenar. Artikel ini akan memperkenalkan beberapa kaedah biasa untuk membantu anda mengalih keluar nilai kunci yang ditentukan dengan mudah daripada tatasusunan PHP.

Kaedah 1: Gunakan fungsi unset()

Fungsi unset() boleh memadamkan pembolehubah yang ditentukan, termasuk nilai kunci ​​​​dalam tatasusunan. Kita boleh menggelungkan melalui tatasusunan dan menggunakan fungsi unset() untuk memadam nilai kunci yang ditentukan, seperti dalam contoh berikut:

// 定义一个数组
$arr = array('apple', 'banana', 'cherry', 'dates');

// 删除指定的键值
unset($arr[1]); // 删除数组中的第二个元素 banana

// 输出数组
print_r($arr);

Hasil yang dijalankan ialah:

Array
(
    [0] => apple
    [2] => cherry
    [3] => dates
)

Kaedah 2: Gunakan Fungsi array_splice()

fungsi array_splice() ialah fungsi operasi tatasusunan yang disediakan oleh PHP Ia boleh memasukkan atau memadam elemen dalam tatasusunan dan mengembalikan elemen yang dipadam. Kita boleh menggunakan fungsi ini untuk memadam nilai kunci yang ditentukan, seperti dalam contoh berikut:

// 定义一个数组
$arr = array('apple', 'banana', 'cherry', 'dates');

// 删除指定的键值
array_splice($arr, 1, 1); // 删除数组中的第二个元素 banana

// 输出数组
print_r($arr);

Hasil yang dijalankan ialah:

Array
(
    [0] => apple
    [1] => cherry
    [2] => dates
)

Apabila menggunakan fungsi array_splice(), parameter pertama ialah tatasusunan , parameter kedua ialah kedudukan permulaan untuk dipadamkan, dan parameter ketiga menentukan bilangan elemen yang akan dipadamkan.

Kaedah 3: Gunakan fungsi array_diff()

fungsi array_diff() boleh digunakan untuk mengira set perbezaan tatasusunan, iaitu mengembalikan tatasusunan yang mengandungi elemen yang wujud dalam tatasusunan A tetapi tidak dalam tatasusunan B Unsur itu tidak wujud. Apabila kita ingin mengalih keluar satu atau lebih nilai kunci yang ditentukan, kita boleh merangkum nilai kunci ini ke dalam tatasusunan dan menghantarnya sebagai parameter kedua kepada fungsi array_diff(), kodnya adalah seperti berikut:

// 定义一个数组
$arr = array('apple', 'banana', 'cherry', 'dates');

// 删除指定的键值
$rm_key = array(1); // 要删除的键值 banana
$new_arr = array_diff($arr, array_intersect_key($arr, array_flip($rm_key)));

// 输出数组
print_r($new_arr);

Hasil yang dijalankan ialah:

Array
(
    [0] => apple
    [2] => cherry
    [3] => dates
)

Dalam kod, fungsi array_intersect_key() digunakan untuk mendapatkan tatasusunan sepadan kunci yang akan dipadamkan, dan fungsi array_flip() digunakan untuk menukar nilai kunci dan indeks tatasusunan Kedudukan ditukar untuk mendapatkan kunci yang sepadan. Akhir sekali, kita boleh menghantar hasil operasi di atas sebagai parameter kepada fungsi array_diff() untuk mengalih keluar nilai kunci yang ditentukan.

Kaedah 4: Gunakan fungsi array_filter()

Fungsi array_filter() boleh digunakan untuk menapis elemen tatasusunan dan mengembalikan elemen yang memenuhi syarat yang ditetapkan. Kita boleh menetapkan nilai kunci untuk dipadamkan sebagai syarat penapis, dan menggunakan fungsi array_filter() untuk mengalih keluar nilai kunci yang ditentukan. Kodnya adalah seperti berikut:

// 定义一个数组
$arr = array('apple', 'banana', 'cherry', 'dates');

// 删除指定的键值
$rm_key = array(1); // 要删除的键值 banana
$new_arr = array_filter($arr, function($k) use($rm_key) {
    return !in_array($k, $rm_key);
}, ARRAY_FILTER_USE_KEY);

// 输出数组
print_r($new_arr);

Hasil yang dijalankan ialah:

Array
(
    [0] => apple
    [2] => cherry
    [3] => dates
)

Dalam kod, kami menggunakan fungsi tanpa nama sebagai fungsi panggil balik fungsi array_filter() untuk menapis item yang akan dipadamkan nilai kunci. Antaranya, kata kunci penggunaan digunakan untuk memperkenalkan pembolehubah luaran bagi memastikan pembolehubah $rm_key boleh diakses di dalam gelung. ARRAY_FILTER_USE_KEY bermakna kami akan menapis kekunci tatasusunan.

Ringkasnya, kami telah memperkenalkan empat kaedah biasa untuk mengalih keluar nilai kunci yang ditentukan dalam tatasusunan PHP Ia adalah fungsi unset(), fungsi array_splice(), array_diff() dan array_filter() fungsi. Saya harap artikel ini dapat membantu anda mengendalikan operasi berkaitan tatasusunan PHP dengan lebih baik.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar nilai kunci yang ditentukan daripada tatasusunan php. 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