Home > Backend Development > PHP Problem > How to find the same elements in two arrays in php

How to find the same elements in two arrays in php

藏色散人
Release: 2023-03-17 16:50:01
Original
5153 people have browsed it

php method to find the same elements in two arrays: 1. Create a php sample file; 2. Define two arrays with the same elements; 3. Use "array_intersect($array1,$array2)" or " array_intersect_assoc()" method can obtain the same elements of two arrays.

How to find the same elements in two arrays in php

The operating environment of this tutorial: windows10 system, PHP8.1 version, DELL G3 computer

php How to find that two arrays are the same Elements?

php gets the same elements of two arrays (intersection) and compares different elements in the two arrays (difference set)

(1)php gets two arrays Same element

  array  array_intersect(array  $array1, array $array2, [, array $...])    
  array  array_intersect_assoc(array  $array1, array $array2, [, array $...])
Copy after login

The functions of these two methods are basically the same. They both return elements that exist in both arrays (or multiple arrays). The difference is that the former only considers the value of the elements in the array. If they are consistent, the two are considered to be the same, and the latter requires that the key and value are consistent to consider the two to be the same. For example:

<?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));
Copy after login

Running the above code will get the following results:

array(4) {
  [0]=>
  string(1) "1"
  ["a"]=>
  string(6) "aaaaaa"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}
Copy after login

And using the method array_intersect_assoc () will get the following results:

array(1) {
  ["a"]=>
  string(6) "aaaaaa"
}
Copy after login

(2) PHP compares different elements in two arrays

  array   array_diff(array  $array1, array $array2, [, array $...])
  array   array_diff_assoc(array  $array1, array $array2, [, array $...])
Copy after login

Similar, the basic functions of these two methods It is also consistent, returning elements that are in the first array but not in other arrays. The former only compares values, while the latter compares both key and value.

<?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));
Copy after login

The running result of the above code is:

array(0) {
}
Copy after login

And if you replace the last line with var_dump(array_diff_assoc($array1, $array2)); you will get the following result:

array(3) {
  [0]=>
  string(1) "1"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}
Copy after login

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to find the same elements in two arrays in php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template