> 백엔드 개발 > PHP 문제 > 키가 기본값인지 확인하기 위해 PHP 배열을 사용할 수 있습니까?

키가 기본값인지 확인하기 위해 PHP 배열을 사용할 수 있습니까?

PHPz
풀어 주다: 2023-04-26 09:25:02
원래의
427명이 탐색했습니다.

PHP는 문자열, 정수, 부동 소수점 숫자, 배열 등 다양한 데이터 유형을 지원하는 객체 지향 프로그래밍 언어입니다. PHP에서 배열은 관련 데이터 세트를 저장하는 데 사용할 수 있는 매우 일반적인 데이터 유형입니다.

PHP 배열에서 키는 값에 해당하는 식별자입니다. 일반적으로 배열을 생성할 때 해당 키를 지정하지만 때로는 기본 키를 사용하기도 합니다. 이때 PHP 배열이 해당 키가 기본값인지 확인하는 것이 가능합니까?

이 질문에 대답하려면 먼저 PHP 배열 키의 기본 규칙을 이해해야 합니다. PHP 배열 키는 정수 또는 문자열 유형일 수 있습니다. 키를 지정하지 않으면 PHP는 다음과 같이 자동으로 키를 생성합니다.

  1. 정수 키가 이미 있는 경우 생성되는 다음 키는 마지막 정수 키에 1을 더한 것입니다.
  2. 그렇지 않으면 새 키는 0입니다.

예를 들어 다음 코드는 기본 키를 사용하여 PHP 배열을 생성합니다.

$arr = array('apple', 'banana', 'orange');
로그인 후 복사

이때 $arr 배열의 키는 0, 1, 2로 자동 생성됩니다. 주어진 키가 기본 키인지 확인하려면 다음 코드를 통해 확인할 수 있습니다.

$key = '0'; // 要判断的key

if(array_key_exists($key, $arr) && $key === strval(intval($key))){
    echo $key . '是默认key';
}else{
    echo $key . '不是默认key';
}
로그인 후 복사

위 코드는 먼저 array_key_exists() 함수를 사용하여 주어진 키가 배열에 이미 존재하는지 확인하고, 그런 다음 intval() 함수를 사용하여 $key를 정수 유형으로 변환한 다음 strval() 함수를 호출하여 이를 문자열 유형으로 변환하고 마지막으로 두 문자열을 비교하여 동일한지 확인합니다. $key가 기본 키이면 결과는 true이고, 그렇지 않으면 결과는 false입니다.

위 방법을 사용하여 배열 키가 기본 키인지 확인하는 것 외에도 is_numeric()이라는 다른 함수를 사용하여 이를 달성할 수도 있습니다. is_numeric() 함수는 주어진 매개변수가 숫자인지 숫자 문자열 유형인지 확인하는 데 사용됩니다. 인수가 숫자 문자열 유형인 경우 true를 반환합니다. 그렇지 않으면 false를 반환합니다.

따라서 다음 코드를 사용하여 배열 키가 기본 키인지 확인할 수 있습니다.

if(is_numeric($key)){
    echo $key . '是默认key';
}else{
    echo $key . '不是默认key';
}
로그인 후 복사

위 코드와 비교하여 이 코드는 유형 변환 단계가 더 적지만 $key가 기본 키인 경우 원칙은 동일합니다. 숫자 또는 숫자 문자열 유형인 경우 기본 키로 간주되고, 그렇지 않으면 기본 키가 아닌 것으로 간주됩니다.

요약하자면, PHP 배열이 키가 기본값인지 판단하는 것이 가능하다는 것을 알 수 있습니다. 이 기능을 구현하기 위해 array_key_exists(), is_numeric() 등과 같은 일부 PHP 내장 함수를 사용할 수 있습니다. 실제 프로젝트에서 배열 키가 기본 키인지 확인해야 하는 경우 위의 방법을 참조하여 구현할 수 있습니다.

위 내용은 키가 기본값인지 확인하기 위해 PHP 배열을 사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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