Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk mencari perbezaan antara dua tatasusunan dalam php

Bagaimana untuk mencari perbezaan antara dua tatasusunan dalam php

Aug 04, 2023 pm 05:04 PM
php

Cara mencari perbezaan antara dua tatasusunan dalam PHP: 1. Gunakan fungsi array_diff() Fungsi ini menerima dua atau lebih tatasusunan sebagai parameter dan mengembalikan elemen yang muncul dalam tatasusunan yang lain 2 . Gunakan gelung dan fungsi in_array() untuk merentasi elemen tatasusunan pertama satu demi satu, dan gunakan fungsi in_array() untuk memeriksa sama ada elemen itu wujud dalam tatasusunan kedua 3. Gunakan fungsi array_diff_key(); . Gunakan fungsi array_udiff (), dsb.

Bagaimana untuk mencari perbezaan antara dua tatasusunan dalam php

Persekitaran pengendalian tutorial ini: sistem windows10, versi php8.1.3, komputer DELL G3.

Dalam PHP, kita selalunya perlu memproses dan membandingkan tatasusunan. Satu operasi biasa ialah mencari perbezaan antara dua tatasusunan, iaitu mencari elemen yang muncul dalam satu tatasusunan tetapi tidak dalam tatasusunan yang lain. Artikel ini akan memperkenalkan beberapa kaedah untuk mencapai operasi ini.

Kaedah 1: Gunakan fungsi array_diff()

Cara paling mudah ialah menggunakan fungsi array_diff() terbina dalam PHP. Fungsi ini menerima dua atau lebih tatasusunan sebagai argumen dan mengembalikan elemen yang muncul dalam tatasusunan pertama tetapi tidak terdapat dalam tatasusunan lain.

Kod sampel adalah seperti berikut:

$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$result = array_diff($array1, $array2);
print_r($result);
Salin selepas log masuk

Hasil output ialah:

Array
(
[0] => 1
[1] => 2
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Ini menunjukkan bahawa elemen yang muncul dalam $array1 tetapi tidak wujud dalam $array2 ialah 1 dan 2.

Kaedah 2: Gunakan fungsi gelung dan in_array()

Selain fungsi array_diff(), kita juga boleh menggunakan fungsi gelung dan in_array() untuk mencari perbezaan antara dua tatasusunan. Kaedah ini berulang melalui elemen tatasusunan pertama satu demi satu dan menyemak sama ada elemen itu hadir dalam tatasusunan kedua menggunakan fungsi in_array().

Kod sampel adalah seperti berikut:

$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$result = [];
foreach ($array1 as $element) {
if (!in_array($element, $array2)) {
$result[] = $element;
}
}
print_r($result);
Salin selepas log masuk

Hasil output ialah:

Array
(
[0] => 1
[1] => 2
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kaedah tiga:

Kaedah lain ialah menggunakan fungsi array_diff_key(). Fungsi ini menerima dua atau lebih tatasusunan sebagai argumen dan mengembalikan nilai utama yang wujud dalam tatasusunan pertama tetapi tidak dalam tatasusunan lain.

Kod sampel adalah seperti berikut:

$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['c' => 3, 'd' => 4, 'e' => 5];
$result = array_diff_key($array1, $array2);
print_r($result);
Salin selepas log masuk

Hasil output ialah:

Array
(
[a] => 1
[b] => 2
)
Salin selepas log masuk

Ini menunjukkan bahawa nilai kunci yang wujud dalam $array1 tetapi bukan dalam $array2 ialah 'a' dan 'b'.

Kaedah 4: Gunakan fungsi array_udiff()

Kaedah terakhir ialah menggunakan fungsi array_udiff(). Fungsi ini memerlukan fungsi perbandingan yang ditentukan pengguna tambahan untuk dihantar untuk membandingkan elemen tatasusunan.

Kod sampel adalah seperti berikut:

$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
$result = array_udiff($array1, $array2, function($a, $b) {
if ($a === $b) {
return 0;
}
return ($a > $b) ? 1 : -1;
});
print_r($result);
Salin selepas log masuk

Hasil output ialah:

Array
(
[0] => 1
[1] => 2
)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Ringkasan

Terdapat banyak cara untuk mencari perbezaan antara dua tatasusunan dalam PHP, termasuk menggunakan fungsi arrayray_diff(), gelung dan in_ar () fungsi, array_diff_key() fungsi dan array_udiff() fungsi. Pilih kaedah yang sesuai untuk melaksanakan pengiraan perbezaan berdasarkan keperluan khusus dan keperluan prestasi .

Atas ialah kandungan terperinci Bagaimana untuk mencari perbezaan antara dua tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Pembalakan CakePHP Pembalakan CakePHP Sep 10, 2024 pm 05:26 PM

Log masuk CakePHP adalah tugas yang sangat mudah. Anda hanya perlu menggunakan satu fungsi. Anda boleh log ralat, pengecualian, aktiviti pengguna, tindakan yang diambil oleh pengguna, untuk sebarang proses latar belakang seperti cronjob. Mengelog data dalam CakePHP adalah mudah. Fungsi log() disediakan

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

CakePHP ialah rangka kerja MVC sumber terbuka. Ia menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP mempunyai beberapa perpustakaan untuk mengurangkan beban tugas yang paling biasa.

See all articles