Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana Menapis Elemen Tatasusunan Berdasarkan Awalan Utama dalam PHP?

Bagaimana Menapis Elemen Tatasusunan Berdasarkan Awalan Utama dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-10-28 11:42:02753semak imbas

How to Filter Array Elements Based on Key Prefix in PHP?

Tapis Elemen Tatasusunan Berdasarkan Awalan Utama

Anda mempunyai tatasusunan yang mengandungi elemen dengan kekunci awalan yang berbeza-beza dan anda perlu mengasingkan hanya mereka dengan kekunci bermula dengan rentetan tertentu, cth., "foo-".

Pendekatan Fungsian

Untuk mengekalkan hanya elemen dengan kekunci yang bermula dengan "foo-" menggunakan pendekatan berfungsi dalam PHP, gunakan fungsi array_filter() PHP bersama-sama dengan fungsi tanpa nama untuk memeriksa setiap kunci:

<code class="php">$array = array_filter($array, function($key) {
    return strpos($key, 'foo-') === 0;
}, ARRAY_FILTER_USE_KEY);</code>

Fungsi ini menggelung melalui $array dan mengembalikan tatasusunan baharu yang mengandungi hanya unsur-unsur yang kuncinya memenuhi syarat bermula dengan "foo-".

Pendekatan Prosedur

Untuk pendekatan prosedur, anda boleh menggunakan gelung foreach untuk melelaran melalui $array dan pilih secara manual elemen yang dikehendaki:

<code class="php">$only_foo = array();
foreach ($array as $key => $value) {
    if (strpos($key, 'foo-') === 0) {
        $only_foo[$key] = $value;
    }
}</code>

Dalam kes ini, tatasusunan $only_foo diisi secara manual dengan elemen yang memenuhi kriteria awalan utama.

Pendekatan Prosedur dengan Objek

Menggunakan OOP, anda boleh menggunakan kelas ArrayIterator untuk lelaran ke atas $array dan menapis elemen yang dikehendaki:

<code class="php">$i = new ArrayIterator($array);
$only_foo = array();
while ($i->valid()) {
    if (strpos($i->key(), 'foo-') === 0) {
        $only_foo[$i->key()] = $i->current();
    }
    $i->next();
}</code>

Kali ini, ArrayIterator menyediakan keupayaan untuk memproses tatasusunan menggunakan binaan berorientasikan objek .

Atas ialah kandungan terperinci Bagaimana Menapis Elemen Tatasusunan Berdasarkan Awalan Utama dalam 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