PHP에서 도트 구문을 다차원 배열로 변환
질문:
어떻게 할 수 있나요? "this.that.other"와 같은 도트 구문을 다차원 배열로 효율적으로 변환합니다. PHP에서?
답변:
이 변환을 수행하려면 다음 함수 구현을 고려하세요.
function assignArrayByPath(&$arr, $path, $value, $separator='.') { $keys = explode($separator, $path); foreach ($keys as $key) { $arr = &$arr[$key]; } $arr = $value; }
설명:
이 함수는 지정된 키를 반복하여 원하는 변환을 수행합니다. $path 매개변수($separator를 구분 기호로 사용) 각 키에 대해 $arr 배열의 해당 요소에 액세스하고 업데이트합니다. 마지막으로 $value를 배열의 가장 낮은 수준 요소에 할당합니다.
사용 예:
함수의 기능을 확인하려면 다음 코드를 실행하세요.
$arr = []; assignArrayByPath($arr, 's1.t1.column.1', 'size:33%'); echo $arr['s1']['t1']['column']['1']; // Output: "size:33%"
이 기능을 활용하면 도트 구문을 다차원 배열로 효과적으로 변환하여 처리를 단순화하고 복잡한 데이터 구조 검색
위 내용은 PHP에서 도트 구문을 다차원 배열로 효율적으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!