> 백엔드 개발 > PHP 문제 > PHP에서 배열의 이름을 얻는 방법

PHP에서 배열의 이름을 얻는 방법

PHPz
풀어 주다: 2023-04-18 09:51:53
원래의
717명이 탐색했습니다.

PHP에서는 다음과 같은 방법으로 배열 이름을 얻을 수 있습니다.

  1. 변수 이름을 배열 이름으로 사용

변수 이름을 배열 이름으로 사용할 경우 변수 이름을 직접 사용하여 배열 이름을 얻을 수 있습니다. 예를 들면 다음과 같습니다.

$array = array('apple', 'banana', 'orange');
$name = 'array';
echo $name; // 输出:array
로그인 후 복사
  1. get_define_vars() 함수를 사용하여 모든 변수 목록을 가져옵니다.

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
  }
}
로그인 후 복사
  1. debug_backtrace() 함수를 사용하여 함수 호출 스택 정보 얻기

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿