PHP에서는 다음과 같은 방법으로 배열 이름을 얻을 수 있습니다.
변수 이름을 배열 이름으로 사용할 경우 변수 이름을 직접 사용하여 배열 이름을 얻을 수 있습니다. 예를 들면 다음과 같습니다.
$array = array('apple', 'banana', 'orange'); $name = 'array'; echo $name; // 输出:array
get_define_vars() 함수는 배열 변수를 포함하여 현재 범위에 정의된 모든 변수 목록을 가져올 수 있습니다. 그런 다음 목록을 반복하여 각 변수가 배열인지 확인하고 배열이면 배열 이름을 가져올 수 있습니다. 예:
$array = array('apple', 'banana', 'orange'); $vars = get_defined_vars(); foreach ($vars as $name => $value) { if (is_array($value) && $value === $array) { echo $name; // 输出:array } }
debug_backtrace() 함수는 현재 함수의 함수 이름과 매개변수가 포함된 함수 호출 스택 정보를 얻을 수 있습니다. 함수 호출 스택을 순회하여 각 함수의 매개변수가 배열인지, 배열의 값이 대상 배열과 같은지 확인할 수 있습니다. 그렇다면 배열의 이름을 가져옵니다. 예:
function getArrayName($array) { $trace = debug_backtrace(); foreach ($trace as $item) { if (isset($item['args'][0]) && is_array($item['args'][0]) && $item['args'][0] === $array) { return $item['function']; } } return null; } $array = array('apple', 'banana', 'orange'); $name = getArrayName($array); echo $name; // 输出:getArrayName
어떤 방법을 사용하든 현재 범위에 정의된 배열의 이름만 가져올 수 있습니다. 배열이 다른 범위에 정의되어 있으면 해당 이름을 직접 가져올 수 없습니다.
위 내용은 PHP에서 배열의 이름을 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!