> 백엔드 개발 > PHP 문제 > PHP 배열에 특정 키-값 쌍이 있습니까?

PHP 배열에 특정 키-값 쌍이 있습니까?

WBOY
풀어 주다: 2023-05-06 11:40:07
원래의
500명이 탐색했습니다.

PHP는 HTML과 함께 사용하여 동적 웹사이트와 웹 애플리케이션을 만들 수 있는 널리 사용되는 오픈 소스 스크립팅 언어입니다. PHP에서 배열은 관련 값 집합을 저장하는 데 사용되는 매우 일반적인 유형의 데이터 구조입니다. PHP 애플리케이션을 개발할 때 특정 키-값 쌍이 배열에 존재하는지 확인해야 하는 경우가 많습니다. 이 기사에서는 PHP 배열에서 키-값 쌍을 확인하는 방법을 소개합니다.

1. in_array() 함수를 사용하세요

in_array() 함수는 PHP에 내장된 함수로, 배열에 특정 값이 있는지 확인하는 데 사용됩니다. 함수는 다음과 같이 사용됩니다:

in_array($value, $array);
로그인 후 복사

여기서 $value는 찾을 값이고 $array는 검색할 배열입니다. 이 함수는 $value가 배열에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

그렇다면 배열에 키-값 쌍이 존재하는지 확인하는 방법은 무엇일까요? 실제로 PHP에서는 배열을 키-값 쌍을 요소로 사용하여 새로운 배열로 변환할 수 있습니다. 즉, 다음 코드를 사용하여 배열의 키와 값을 다시 결합할 수 있습니다.

$new_array = array_combine(array_keys($array), array_values($array));
로그인 후 복사

이렇게 하면 배열의 키가 원래 배열의 키이고 값이 되는 새로운 연관 배열 $new_array가 생성됩니다. ​원래 배열에 해당 값이 있습니다. 그런 다음 in_array() 함수를 사용하여 특정 키-값 쌍이 새 배열에 존재하는지 확인할 수 있습니다. 예를 들어 $key_value_array 배열에 키가 "foo"이고 값이 "bar"인 키-값 쌍이 포함되어 있는지 확인하려면 다음 코드를 사용할 수 있습니다.

$key_value_array = array("foo"=>"bar", "baz"=>"qux");
$new_array = array_combine(array_keys($key_value_array), array_values($key_value_array));
if(in_array("bar", $new_array)) {
  echo "键值对(foo:bar)存在于数组中!";
}
로그인 후 복사

2. isset() 함수를 사용하세요

isset() 함수는 특정 변수가 설정되어 있고 null이 아닌지 확인하는 데 사용되는 또 다른 PHP 내장 함수입니다. 따라서 isset() 함수를 사용하여 배열에 특정 키가 존재하는지 확인할 수 있습니다. isset() 함수가 true를 반환하면 해당 키가 배열에 존재한다는 의미입니다. 예를 들어, 다음 코드는 $key_value_array 배열에 "foo" 키가 있는지 확인합니다.

$key_value_array = array("foo"=>"bar", "baz"=>"qux");
if(isset($key_value_array["foo"])) {
  echo "键foo存在于数组中!";
}
로그인 후 복사

마찬가지로 isset() 함수를 사용하여 $key_value_array에 "bar" 값이 있는지 확인할 수도 있습니다.

$key_value_array = array("foo"=>"bar", "baz"=>"qux");
if(in_array("bar", $key_value_array)) {
  echo "值bar存在于数组中!";
}
로그인 후 복사

3. array_key_exists( ) 함수 사용

array_key_exists() 함수는 배열에 키가 있는지 확인하는 데 사용되는 또 다른 PHP 배열 함수입니다. isset() 함수와 달리 array_key_exists() 함수는 값이 아닌 지정된 키가 배열에 존재하는지 여부만 확인합니다. 다음 코드는 $key_value_array 배열에 "foo" 키가 있는지 확인합니다.

$key_value_array = array("foo"=>"bar", "baz"=>"qux");
if(array_key_exists("foo", $key_value_array)) {
  echo "键foo存在于数组中!";
}
로그인 후 복사

여기서 array_key_exists() 함수는 해당 값이 아닌 배열의 키만 확인한다는 점에 유의해야 합니다. 키와 값을 모두 확인하려면 앞서 언급한 in_array() 함수를 사용하거나 배열을 새 배열로 변환한 후 in_array() 함수를 사용하여 키-값 쌍을 확인해야 합니다.

결론

PHP의 배열에 키-값 쌍이 존재하는지 확인하려면 in_array() 함수, isset() 함수 또는 array_key_exists() 함수를 사용할 수 있습니다. 그 중 in_array() 함수와 isset() 함수는 주로 값 확인에 사용되고, array_key_exists() 함수는 키 확인에 사용될 수 있습니다. 키와 값을 동시에 확인하고 싶다면 배열을 새로운 배열로 변환한 후 in_array() 함수를 사용해 판단해야 합니다. 실제 적용에서는 특정 시나리오를 기반으로 적절한 방법을 선택합니다.

위 내용은 PHP 배열에 특정 키-값 쌍이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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