Written by
php-style
on
on
[php] 배열과 배열 비교
[php] 배열과 배열 비교
배열과 배열을 비교해야할때가 간혹 있다.
가령 A에 담긴것을 B가 포함하는지 아닌지를 말이다. 이럴때 배열과 배열을 비교하고 제외하거나 추가 할수있는 간단한 방법이 있다.
당연히 둘은 배열관계여야 한다
$before = array(0,1,2,3,4,5,6);
$after = array(3,4,5,6);
$intersect= array_intersect($before, $after);
결과: 3,4,5,6 이다.
둘다 값을 가진것에 해당하는 결과값이다.
그렇다면 after 에 없는 값은??
$diff= array_diff($before, $after);
결과 : 0,1,2 가 된다.
그럼 한가지 활용의예를 들어보자
before 값에서 after 가 전혀 다른값이 있을 경우 after 에 새로운값은 저장하고
동일한 값은 유지하며 after에 없는 값은 before 에서 삭제 할 경우 어떻게 해야할까?
foreach($after as $after) {
if (!in_array($after, $intersect) ) {
echo $after;
};
};
위 처럼 하면 응용도 가능하다
from http://tronge.tistory.com/206 by ccl(A) rewrite - 2021-12-10 15:27:03