연관 배열 php 질문합니다
본문
$ar = array("a","d","e",...);
$area = array(
"ㄱ" => array("a","b","c"),
"ㄴ" => array("d","e","f","g"),
"ㄷ" => array("h","i","j","k"),
"ㄹ" => array("l","m","n")
);
$ar 에서 for문 돌리면서 키값 가져오고 싶은데 어떻게 해야 하나요?ㅜㅜ
"a" 일때 "ㄱ" 이런식으로요ㅜ
답변 2
$ar = array("a","d","e");
$area = array(
"ㄱ" => array("a","b","c"),
"ㄴ" => array("d","e","f","g"),
"ㄷ" => array("h","i","j","k"),
"ㄹ" => array("l","m","n")
);
array_walk($ar, function (&$v) use ($area){
foreach ($area as $sKey => $sVal) {
if ( array_search($v, $sVal) !== false ) {
$v = $sKey;
break;
}
}
});
var_dump($ar);
//--- array(3) { [0]=> string(3) "ㄱ" [1]=> string(3) "ㄴ" [2]=> string(3) "ㄴ" }
세부 조건이 없어서 임의로 코드를 작성했습니다. $ar 배열에 있는 값으로 체크해서 키가 존재하면 해당 키값으로 변경합니다.
!-->$data = "";
foreach ($ar as $key => $value) {
switch($key) {
case "a" :
$data = $area['ㄱ'];
break;
case "b" :
$data = $area['ㄴ'];
break;
... 등등
}
}
답변을 작성하시기 전에 로그인 해주세요.