array형식 중복데이터제외 개수구하기

array형식 중복데이터제외 개수구하기

QA

array형식 중복데이터제외 개수구하기

본문

$data

[{홍길동:남자}

{강호동:남자}

{이서희:여자}]

 

이런 3개의 object로 되어있는 array가 있을떄

 

$data.length나 count($data)를 하면 3이 출력되는데

 

남자란 value 중복값 제거 하면 남자/여자가 남기때문에

 

2이 출력되게 하고 싶은데 방법 없을까요?

 

 

 

이 질문에 댓글 쓰기 :

답변 2


<?php
    $data['홍길동'] = "남자";
    $data['강호동'] = "남자";
    $data['이서희'] = "여자";
    $data['박근혜'] = "여자";
    $data['이명박'] = "남자";
    $data['최순실'] = "여자";
    
    print_r($data);
    echo "<BR>";
    foreach (array_keys($data, '여자') as $key) {
        unset($data[$key]);
    }
    print_r($data);
?>

 

아 질문의 요지가 중복값 제거네요. 그럼 기다려 보세요.

 

위에는 참고 하시구요. 중복값 제거는 다음과 같습니다.

 


<?php
    $data['홍길동'] = "남자";
    $data['강호동'] = "남자";
    $data['이서희'] = "여자";
    $data['박근혜'] = "여자";
    $data['이명박'] = "남자";
    $data['최순실'] = "여자";
    $data['박바보'] = "중성";        
    $data['이수자'] = "여자";
    $data['최복남'] = "남자";
        
    print_r($data); echo count($data); echo "<BR><BR>";
    foreach ($data as $key=>$value) {
        $i=0;
        foreach (array_keys($data, $value) as $key) {
            if($i!=0)
                unset($data[$key]);
            $i++;
        }
    }
    print_r($data); echo count($data);
    
?>
답변을 작성하시기 전에 로그인 해주세요.
전체 71
QA 내용 검색

회원로그인

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