Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menapis Tatasusunan Berbilang Dimensi Menggunakan Padanan Rentetan Separa dalam PHP?
Menapis Tatasusunan Berbilang Dimensi Berdasarkan Padanan Separa Nilai Carian
Dalam senario tertentu, adalah perlu untuk menapis data yang disimpan dalam tatasusunan berbilang dimensi berdasarkan padanan separa nilai carian yang ditentukan.
Andaikan kita mempunyai tatasusunan berstruktur seperti berikut:
$array = [ [ 'text' => 'I like Apples', 'id' => '102923' ], [ 'text' => 'I like Apples and Bread', 'id' => '283923' ], [ 'text' => 'I like Apples, Bread, and Cheese', 'id' => '3384823' ], [ 'text' => 'I like Green Eggs and Ham', 'id' => '4473873' ] ];
Anggap kita ingin mencari jarum tertentu, seperti "Roti." Untuk menapis tatasusunan dan mendapatkan semula elemen yang mengandungi padanan separa, kami boleh memanfaatkan fungsi penapis_tatasusunan.
$search_text = 'Bread'; $filtered_array = array_filter($array, function($element) use ($search_text) { return (strpos($element['text'], $search_text) !== false); });
Fungsi penapis_tatasusunan menerima dua parameter: tatasusunan input dan fungsi panggil balik. Fungsi panggil balik bertanggungjawab untuk menilai sama ada setiap elemen perlu dikekalkan atau dialih keluar daripada tatasusunan. Dalam kes kami, fungsi panggil balik menyemak sama ada medan 'teks' elemen mengandungi istilah carian yang ditentukan. Jika ya, ia kembali benar, menunjukkan bahawa elemen itu harus dikekalkan.
Setelah dilaksanakan, tatasusunan_penapis akan mengandungi elemen berikut:
[ [ 'text' => 'I like Apples and Bread', 'id' => '283923' ], [ 'text' => 'I like Apples, Bread, and Cheese', 'id' => '3384823', ] ]
Pendekatan ini menapis tatasusunan berbilang dimensi dengan berkesan, mengembalikan hanya elemen yang memenuhi syarat padanan separa.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menapis Tatasusunan Berbilang Dimensi Menggunakan Padanan Rentetan Separa dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!