Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk mencari elemen yang sama dalam dua tatasusunan dalam php

Bagaimana untuk mencari elemen yang sama dalam dua tatasusunan dalam php

藏色散人
Lepaskan: 2023-03-17 16:50:01
asal
5231 orang telah melayarinya

Cara mencari elemen yang sama dalam dua tatasusunan dalam PHP: 1. Cipta fail sampel PHP 2. Tentukan dua tatasusunan dengan elemen yang sama 3. Gunakan "array_intersect($array1,$array2)" atau Kaedah " array_intersect_assoc()" boleh mendapatkan elemen yang sama bagi dua tatasusunan.

Bagaimana untuk mencari elemen yang sama dalam dua tatasusunan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 10, PHP versi 8.1, komputer DELL G3

php Bagaimana untuk mencarinya dua tatasusunan adalah Elemen yang sama?

php mendapat elemen yang sama bagi dua tatasusunan (persimpangan) dan membandingkan elemen yang berbeza dalam dua tatasusunan (set perbezaan)

(1) php mendapat dua tatasusunan Elemen yang sama

  array  array_intersect(array  $array1, array $array2, [, array $...])    
  array  array_intersect_assoc(array  $array1, array $array2, [, array $...])
Salin selepas log masuk

Fungsi kedua-dua kaedah ini pada dasarnya adalah sama Kedua-duanya mengembalikan elemen yang wujud dalam kedua-dua tatasusunan (atau berbilang tatasusunan). tatasusunan. kedua-duanya dianggap sama jika nilainya adalah konsisten, manakala yang kedua memerlukan kedua-dua kunci dan nilai untuk menganggapnya sama Contohnya:

<?php
 
$array1 = array(&#39;1&#39;, &#39;a&#39; => &#39;aaaaaa&#39;, &#39;b&#39; => &#39;bbbbbb&#39;, &#39;c&#39;);
$array2 = array(&#39;a&#39; => &#39;aaaaaa&#39;, &#39;c&#39; => &#39;bbbbbb&#39;, &#39;c&#39;, &#39;1&#39;);
 
var_dump(array_intersect($array1,$array2));
Salin selepas log masuk

Jalankan kod di atas dan anda akan mendapat keputusan berikut:

array(4) {
  [0]=>
  string(1) "1"
  ["a"]=>
  string(6) "aaaaaa"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}
Salin selepas log masuk

Menggunakan kaedah array_intersect_assoc() akan mendapat hasil berikut:

array(1) {
  ["a"]=>
  string(6) "aaaaaa"
}
Salin selepas log masuk

(2) PHP membandingkan berbeza elemen dalam dua tatasusunan

  array   array_diff(array  $array1, array $array2, [, array $...])
  array   array_diff_assoc(array  $array1, array $array2, [, array $...])
Salin selepas log masuk

Begitu juga, fungsi asas kedua-dua kaedah ini adalah sama, mengembalikan elemen yang berada dalam tatasusunan pertama tetapi tidak dalam tatasusunan lain. Yang pertama hanya membandingkan nilai, manakala yang kedua membandingkan kedua-dua kunci dan nilai.

<?php
 
$array1 = array(&#39;1&#39;, &#39;a&#39; => &#39;aaaaaa&#39;, &#39;b&#39; => &#39;bbbbbb&#39;, &#39;c&#39;);
$array2 = array(&#39;a&#39; => &#39;aaaaaa&#39;, &#39;c&#39; => &#39;bbbbbb&#39;, &#39;c&#39;, &#39;1&#39;);
 
var_dump(array_diff($array1,$array2));
Salin selepas log masuk

Hasil larian kod di atas ialah:

array(0) {
}
Salin selepas log masuk

Dan jika anda menggantikan baris terakhir dengan var_dump(array_diff_assoc($array1, $array2)); keputusan berikut:

array(3) {
  [0]=>
  string(1) "1"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}
Salin selepas log masuk

Pembelajaran yang disyorkan: "Tutorial Video PHP"

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

Label berkaitan:
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