Rumah > pembangunan bahagian belakang > tutorial php > Gunakan fungsi tersuai PHP untuk memanjangkan kefungsian persilangan tatasusunan dan kesatuan

Gunakan fungsi tersuai PHP untuk memanjangkan kefungsian persilangan tatasusunan dan kesatuan

WBOY
Lepaskan: 2024-05-01 10:45:02
asal
395 orang telah melayarinya

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 kefungsian persilangan tatasusunan dan kesatuan

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;
}
Salin selepas log masuk

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;
}
Salin selepas log masuk

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]
Salin selepas log masuk

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]
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan