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

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

QA

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

답변 4

본문


$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];
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 33
© SIRSOFT
현재 페이지 제일 처음으로