php 중복 문자 제거

php 중복 문자 제거

QA

php 중복 문자 제거

본문

만약 $a = "1,2,3"이있고

$b = "2,3,4" 가 있다면

 

2와 3을 제거하고 1,4만 남게 하려면 어떻게 해야할까요?

이 질문에 댓글 쓰기 :

답변 1

여집합을 구하는거군요.

 

php함수중에

array_diff 는 차집합

array_intersect 는 교집합 입니다.

불행히도 php에 여집합 함수는 없습니다.

드모르간 법칙을 적용해서 구해봅니다.

https://ko.wikipedia.org/wiki/%EC%97%AC%EC%A7%91%ED%95%A9

 


$arr_a = explode(",", $a);
$arr_b = explode(",", $c);
 
//여집합 
$arr_c = array_merge(
            array_diff($arr_a, $arr_b),         // 1
            array_diff($arr_b, $arr_a)          //4
        );                              
 //  $arr_c = 1  4
 
echo implode(",", $arr_c);
//result = 1,4
 
//교집합은
$arr_d = array_intersect($arr_a, $arr_b);  //2, 3
 
//합집합은
$arr_e = array_merge(
            array_intersect($arr_a, $arr_b),   //2, 3
            array_diff($arr_a, $arr_b),         // 1
            array_diff($arr_b, $arr_a)          //4
        );   //2, 3, 1, 4                          
답변을 작성하시기 전에 로그인 해주세요.
전체 93
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT