Bagaimana untuk memadam elemen tertentu daripada tatasusunan
P粉141455512
P粉141455512 2023-08-20 16:20:23
0
2
532
<p>Bagaimanakah cara saya mengalih keluar elemen daripada tatasusunan apabila saya tahu nilainya? Contohnya: </p> <p>Saya mempunyai tatasusunan: </p> <pre class="brush:php;toolbar:false;">$array = array('epal', 'oren', 'strawberi', 'blueberry', 'kiwi');</pre> <p>Input pengguna<kod>strawberi</kod></p> <p><kod>strawberi</kod> telah dialih keluar daripada <kod>$array</kod>. </p> <p>Penjelasan lengkapnya adalah seperti berikut:</p> <p>Saya mempunyai pangkalan data yang menyimpan senarai item yang dipisahkan koma. Kod menarik senarai berdasarkan lokasi yang dipilih oleh pengguna. Jadi, jika mereka memilih strawberi, kod itu mengeluarkan setiap entri yang mengandungi strawberi dan menggunakan split() untuk menukarnya kepada tatasusunan. Saya mahu mengalih keluar item yang dipilih pengguna daripada tatasusunan, contohnya strawberi dalam contoh ini. </p>
P粉141455512
P粉141455512

membalas semua(2)
P粉511757848

Gunakan array_diff() untuk penyelesaian satu baris:

$array = array('apple', 'orange', 'strawberry', 'blueberry', 'kiwi', 'strawberry'); //再加一个'strawberry'以证明它可以删除字符串的多个实例
$array_without_strawberries = array_diff($array, array('strawberry'));
print_r($array_without_strawberries);

...Tiada fungsi tambahan atau gelung foreach diperlukan.

P粉254077747

Gunakan fungsi array_search函数获取键,并使用unset untuk memadamnya jika ditemui:

if (($key = array_search('strawberry', $array)) !== false) {
    unset($array[$key]);
}
Fungsi

array_search mengembalikan false apabila item tidak ditemui (mengembalikan null sebelum PHP 4.2.0).

Jika mungkin terdapat beberapa item dengan nilai yang sama, anda boleh menggunakan fungsi array_keys untuk mendapatkan kunci semua item:

foreach (array_keys($array, 'strawberry') as $key) {
    unset($array[$key]);
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan