array에서 출력할때 원하는값만 출력하기

array에서 출력할때 원하는값만 출력하기

QA

array에서 출력할때 원하는값만 출력하기

본문


$name = array(
"001"=> array("name" => "홍길" "se" => "m"),
"002"=> array("name" => "아이" "se" => "w")
)
foreach($name as $key => $value){
           echo $value[name];
}

 

대충 이런식으로 되어있는데 전 홍길만 출력하고 싶습니다.

실제는 값이 많아서 인덱스로 가져오면 힘듭니다.

 

근데 $value[name]으로 가져와버리니깐 조건으로 se = m 을 줄수가 없겠떠라구요.

 


if($value[se] == "m")
{ echo $value[name];
}else{
echo $value[name];
}

 

이런식으로 if으로 se를 체크해도 가져오는게 $value[name]이다보니;; 전체출력되는데

어떻게 해야할까요?

echo $value[name] and $value[se] == m

이런것도 아니고..

이 질문에 댓글 쓰기 :

답변 4

하고싶은 작업이 뭔가요?

배열에서 se==m일때의  name을 가져오고싶은건가요?

$name = array(
"001"=> array("name" => "홍길", "se" => "m"),
"002"=> array("name" => "아이", "se" => "w")
);
foreach($name as $key => $value){
 if($value[se] == "m") echo $value[name];
}

이렇게 하면 되는데 쓸데없이 else echo $value[name]; 이걸 넣어놓으니 모든 이름이 나오죠

 

 


$name = array(
"001"=> array("name" => "홍길", "se" => "m"),
"002"=> array("name" => "아이", "se" => "w")
)
foreach($name as $key => $value){
    foreach($value as $k => $val) {
        if ($val == "홍길")
            echo $val."<BR>";
    }
    //       echo $value[name];
}

 

이렇게 하면..


$name = array(
"001"=> array("name" => "홍길", "se" => "m"),
"002"=> array("name" => "아이", "se" => "w")
);
foreach ($name as $key => $value) {
    if ($value['name'] != '홍길') continue;
    echo $value[name];
}

위 올리신 코드 오류납니다 

아래와같이 수정하시고 array_splice 원하는 값 구하면됩니다.

 


$name = array(
"001"=> array("name" => "홍길","se" => "m"),
"002"=> array("name" => "아이","se" => "w")
);
 
 
$tmp = array_splice($name["001"],0,1);
echo $tmp[name];
답변을 작성하시기 전에 로그인 해주세요.
전체 123,663 | RSS
QA 내용 검색

회원로그인

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