나는이 질문에 비슷한 질문을 올렸지 만 지금은 다르므로 중복으로 닫지 마십시오.PHP : 다차원 배열에서 동적으로 키 위치 찾기
나는 다차원 배열을 가지고 있습니다. 주어진 배열 키 (모든 배열 키는 문자열)의 위치를 찾고 배열의 키 위치를 배열로 반환하는 함수가 필요합니다.
$arr = array ( 'fruit' => array( 'apples' => array(), 'oranges' => array(), 'bananas' => array() ), 'vegetables' => array( 'tomatoes' => array(), 'carrots' => array(), 'celery' => array(), 'beets' => array ( 'bears' => array(), 'battlestar-galactica' => array() ), ), 'meat' => array(), 'other' => array() );
함수 가변 인자/동적 번호 (즉, 선택적 인수)을 가져야한다 :
여기 예시적인 배열이다. 인수는 내 배열의 "수준"(차원)을 나타냅니다.
기능이 하나 개의 인자로 호출 될 경우, 함수는 상기 어레이의 첫번째 레벨/치수에 키 찾아야한다 (즉, 그것들은 예에서는 'fruit'
, 'vegetables'
, 'meat'
및 'other'
것).
두 개의 인수 (예 : theFunction('vegetables', 'beets')
이면 'vegetables'
이라는 키를 찾아 이라는 하위 키를 찾아야합니다 ('vegetables'
수준/분기/차원에만 해당)!이 예에서는 array(1, 3)
을 반환합니다.
물론 이것은 레벨/치수의 수에 관계없이 작동해야합니다.
당신이 이미 알고있는 열쇠를 사용하지 않는 이유는 무엇입니까? 좋아요 $ arr [ 'vegelatbles'] [ 'beets']; 이것은 $ arr [1] [3]과 동일합니다. – JochenJung
당신은 $ arr [ 'secondkey']! = $ arr [1]'... – fbstj
을 깨닫습니다. $ Arr [1] [3]은 $ arr [ 'vegelatbles'] [ 'beets ']; – Gordon