- Set operations with PHP Arrays
- PHP 배열 집합 연산
- PHP 합집합, 교집합, 차집합, 대칭차
1 테스트 환경[ | ]
- $arr1의 원소는 A, B, C, D
- $arr2의 원소는 C, D, E, F
- 테이블 생성 및 데이터 입력
PHP
Copy
$arr1 = ['A', 'B', 'C', 'D'];
$arr2 = ['C', 'D', 'E', 'F'];
2 합집합[ | ]
PHP
CPU
0.0s
MEM
22M
0.0s
Copy
$arr1 = ['A', 'B', 'C', 'D'];
$arr2 = ['C', 'D', 'E', 'F'];
$union = array_unique(array_merge($arr1, $arr2));
print_r( $union );
Array ( [0] => A [1] => B [2] => C [3] => D [6] => E [7] => F )
3 교집합[ | ]
PHP
Copy
$arr1 = ['A', 'B', 'C', 'D'];
$arr2 = ['C', 'D', 'E', 'F'];
$intersection = array_values(array_intersect($arr1, $arr2));
print_r( $intersection );
Loading
4 차집합[ | ]
PHP
Copy
$arr1 = ['A', 'B', 'C', 'D'];
$arr2 = ['C', 'D', 'E', 'F'];
$complement = array_values(array_diff($arr1, $arr2));
print_r( $complement );
Loading
5 대칭차집합[ | ]
PHP
Copy
$arr1 = ['A', 'B', 'C', 'D'];
$arr2 = ['C', 'D', 'E', 'F'];
$sym_diff = array_values(array_diff(array_merge($arr1, $arr2), array_intersect($arr1, $arr2)));
print_r( $sym_diff );
Loading
6 예제 코드[ | ]
PHP
Copy
<?php
$arr1 = array('A', 'B', 'C', 'D');
$arr2 = array('C', 'D', 'E', 'F');
echo "<h3>Union</h3>";
$union = array_unique(array_merge($arr1, $arr2));
print_r($union);
echo "<h3>Intersection</h3>";
$intersection = array_values(array_intersect($arr1, $arr2));
print_r($intersection);
echo "<h3>Complement</h3>";
$complement = array_values(array_diff($arr1, $arr2));
print_r($complement);
echo "<h3>Symmetric difference</h3>";
$sym_diff = array_values(array_diff(array_merge($arr1, $arr2), array_intersect($arr1, $arr2)));
print_r($sym_diff);