Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mencari perbezaan antara elemen bersebelahan tatasusunan dalam PHP

Bagaimana untuk mencari perbezaan antara elemen bersebelahan tatasusunan dalam PHP

小老鼠
小老鼠asal
2023-05-26 16:42:521098semak imbas

Cara melaksanakan perbezaan antara elemen bersebelahan tatasusunan dalam PHP: 1. Cipta fail sampel PHP 2. Tentukan dua tatasusunan, iaitu "$array1" dan "$array2", dan tatasusunan yang menyimpan; perbezaannya ialah " $diff"; 3. Gunakan fungsi "array_diff" untuk mencari perbezaan antara elemen bersebelahan tatasusunan Sintaksnya ialah "array array_diff (array $array1, array $array2 [, array $...]) ".

Bagaimana untuk mencari perbezaan antara elemen bersebelahan tatasusunan dalam PHP

Sistem pengendalian untuk tutorial ini: Sistem Windows 10, PHP versi 8.1.3, komputer Dell G3

PHP ialah bahagian pelayan yang popular bahasa skrip, telah menjadi salah satu bahasa pilihan untuk pembangunan web kerana kemudahan penggunaan dan kebolehpercayaannya. Dalam PHP, pemprosesan dan pengurusan data boleh dilakukan melalui tatasusunan. Apabila bekerja dengan data, kadangkala anda perlu membandingkan dua tatasusunan untuk mencari perbezaan antara mereka.

Kaedah PHP untuk melaksanakan perbezaan antara elemen bersebelahan tatasusunan

1 fungsi array_diff

PHP menyediakan binaan -in function array_diff untuk melaksanakan operasi perbezaan antara dua tatasusunan. Sintaks fungsi ini adalah seperti berikut:

array array_diff ( array $array1 , array $array2 [, array $... ] )

Antaranya, $array1 dan $array2 ialah dua objek untuk dibandingkan.

Berikut ialah kod sampel yang menunjukkan cara menggunakan fungsi array_diff untuk mencari perbezaan antara dua tatasusunan.

<?php
$array1 = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;);
$array2 = array(&#39;b&#39;, &#39;d&#39;, &#39;f&#39;, &#39;h&#39;);
$diff = array_diff($array1, $array2); //求出$array1中不同于$array2的元素
print_r($diff); // Array ( [0] => a [2] => c [4] => e )
?>

Dalam kod di atas, $array1 dan $array2 ialah dua tatasusunan untuk dibandingkan dan $diff ialah tatasusunan yang digunakan untuk menyimpan perbezaan. Menggunakan fungsi array_diff, anda boleh melakukan operasi perbezaan pada dua tatasusunan dan menyimpan perbezaan dalam tatasusunan $diff.

2. Fungsi tersuai

Jika anda perlu mengendalikan perbezaan antara berbilang tatasusunan atau jika anda perlu melakukan perbandingan yang lebih kompleks, anda memerlukan fungsi tersuai untuk dilaksanakan ia. Di bawah ialah kod sampel yang menunjukkan cara menggunakan fungsi tersuai untuk melaksanakan perbezaan antara dua tatasusunan.

<?php
function array_diff_custom($array1, $array2) {
    $diff = array();
    foreach ($array1 as $value) {
        if (!in_array($value, $array2)) {
            $diff[] = $value;
        }
    }
    return $diff;
}
$array1 = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;);
$array2 = array(&#39;b&#39;, &#39;d&#39;, &#39;f&#39;, &#39;h&#39;);
$diff = array_diff_custom($array1, $array2); //求出$array1中不同于$array2的元素
print_r($diff); // Array ( [0] => a [2] => c [4] => e )
?>

Dalam kod di atas, fungsi array_diff_custom ialah fungsi tersuai yang digunakan untuk merealisasikan perbezaan antara dua tatasusunan. Fungsi ini menggunakan gelung untuk merentasi tatasusunan Jika elemen dalam $array1 tiada dalam $array2, ia disimpan dalam tatasusunan $diff dan akhirnya mengembalikan tatasusunan $diff.

3. Ringkasan

Dalam PHP, perbezaan antara dua tatasusunan boleh dicapai menggunakan fungsi array_diff dan fungsi tersuai. Fungsi array_diff ialah fungsi terbina dalam PHP Ia agak mudah digunakan dan sesuai untuk beberapa senario mudah. Fungsi tersuai boleh diproses secara fleksibel dan sesuai untuk senario yang lebih kompleks. Dalam penggunaan sebenar, anda boleh memilih kaedah yang sesuai untuk mengendalikan perbezaan tatasusunan mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk mencari perbezaan antara elemen bersebelahan tatasusunan 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