Rumah >pembangunan bahagian belakang >tutorial php >Gunakan fungsi tersuai PHP untuk memanjangkan kefungsian persilangan tatasusunan dan kesatuan
Lanjutkan keupayaan persimpangan tatasusunan dan penyatuan dengan fungsi tersuai PHP, fungsi persimpangan tersuai membenarkan mencari persimpangan mengikut kunci atau nilai, dan fungsi kesatuan tersuai mencari kesatuan mengikut kunci atau nilai. Ini memberi anda fleksibiliti untuk memanipulasi tatasusunan berdasarkan keperluan khusus anda.
Gunakan fungsi tersuai PHP untuk memanjangkan persilangan tatasusunan dan kesatuan
Dalam PHP, persilangan dan kesatuan ialah dua fungsi manipulasi data yang kerap digunakan. Walau bagaimanapun, kadangkala kita perlu memperluaskan fungsinya untuk memenuhi keperluan tertentu. Tutorial ini membimbing anda membuat fungsi tersuai menggunakan PHP untuk meningkatkan pemprosesan persilangan dan kesatuan.
Fungsi Persimpangan Tersuai
Fungsi persimpangan tersuai membolehkan anda menentukan kunci atau nilai persimpangan yang ingin anda cari. Begini cara untuk menciptanya:
function custom_array_intersect(array $array1, array $array2, $key_or_value = 'key') { $result = []; foreach ($array1 as $key => $value) { if ($key_or_value == 'key') { if (array_key_exists($key, $array2)) { $result[$key] = $array1[$key]; } } else { if (in_array($value, $array2)) { $result[$key] = $array1[$key]; } } } return $result; }
Fungsi Kesatuan Tersuai
Begitu juga, anda boleh mencipta fungsi kesatuan tersuai yang membolehkan anda menentukan kunci atau nilai yang anda ingin cari kesatuan pada:
function custom_array_union(array $array1, array $array2, $key_or_value = 'key') { $result = []; foreach ($array1 as $key => $value) { $result[$key] = $array1[$key]; } foreach ($array2 as $key => $value) { if ($key_or_value == 'key') { if (!array_key_exists($key, $result)) { $result[$key] = $array2[$key]; } } else { if (!in_array($value, $result)) { $key_to_use = array_search($value, $array1); if ($key_to_use !== false) { $result[$key_to_use] = $array2[$key]; } else { $new_key = max(array_keys($result)) + 1; $result[$new_key] = $array2[$key]; } } } } return $result; }
Contoh Praktikal
Berikut ialah beberapa kes praktikal bagi dua fungsi tersuai:Contoh persimpangan:
$array1 = ['a' => 1, 'b' => 2, 'c' => 3]; $array2 = ['b' => 4, 'c' => 5, 'd' => 6]; $result = custom_array_intersect($array1, $array2, 'key'); print_r($result); // 输出: ['b' => 4, 'c' => 5]
Contoh kesatuan:
$array1 = ['a' => 1, 'b' => 2, 'c' => 3]; $array2 = ['b' => 4, 'd' => 5, 'e' => 6]; $result = custom_array_union($array1, $array2, 'key'); print_r($result); // 输出: ['a' => 1, 'b' => 4, 'c' => 3, 'd' => 5, 'e' => 6]
Atas ialah kandungan terperinci Gunakan fungsi tersuai PHP untuk memanjangkan kefungsian persilangan tatasusunan dan kesatuan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!