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];
답변을 작성하시기 전에 로그인 해주세요.