Array_flip () 및 Array_Search ()를 사용하여 값에서 키로 빠른 포지셔닝을 달성하는 방법은 무엇입니까?
PHP에서는 종종 배열에서 빠른 검색을 수행해야합니다. 때로는 값을 통해 해당 키를 찾거나 값에서 키를 반전시켜야합니다. PHP는 매우 유용한 두 가지 기능을 제공합니다 : Array_flip () 및 Array_Search () 는 값에서 키로 빠른 포지셔닝을 달성 할 수 있습니다. 이 기사는이 두 기능을 사용 하여이 작업을 수행하는 방법을 소개합니다.
Array_flip () 함수는 배열에서 키와 값을 교환하여 원래 값이 배열의 키가되고 원래 키는 값이됩니다. 값을 새 키로 찾을 수 있도록 Array_flip ()를 통해 반전 할 수있는 연관 배열이 있다고 가정합니다.
<?php
$array = [
'apple' => 1,
'banana' => 2,
'orange' => 3
];
$flipped = array_flip($array);
print_r($flipped);
?>
출력 결과 :
Array
(
[1] => apple
[2] => banana
[3] => orange
)
이 예에서는 array_flip ()가 원래 배열의 값을 키로, 원래 키를 값으로 바꿉니다.
Array_Search () 함수는 배열에서 주어진 값을 찾고 해당 키를 반환하는 데 사용될 수 있습니다. 일치하는 값이 발견되면 Array_Search ()는 값의 키를 반환합니다. 일치하는 값이 발견되지 않으면 False가 반환됩니다.
<?php
$array = [
'apple' => 1,
'banana' => 2,
'orange' => 3
];
$key = array_search(2, $array);
echo "The key for value 2 is: " . $key;
?>
출력 결과 :
The key for value 2 is: banana
Array_flip () 함수를 사용하여 배열의 값과 키를 교체 한 다음 Array_Search ()를 사용하여 값에 해당하는 키를 빠르게 찾을 수 있습니다.
<?php
$array = [
'apple' => 1,
'banana' => 2,
'orange' => 3
];
// 먼저 배열을 뒤집습니다
$flipped = array_flip($array);
// 사용 array_search() 값에 해당하는 키를 찾으십시오
$key = array_search(2, $flipped);
echo "The original key for value 2 is: " . $key;
?>
출력 결과 :
The original key for value 2 is: banana
이 방법은 Array_flip ()가 모든 값을 키로 저장하므로 키를 직접 찾아서 빠르게 찾을 수 있기 때문에 더 효율적입니다. 반대로, Array_Search ()를 직접 사용하여 원래 배열에서 값의 키를 찾으면 각 검색은 전체 배열을 통해 반복해야합니다. 배열을 반전시킴으로써 검색 프로세스가 매우 효율적입니다.
이 방법은 빠른 검색을 위해 값에서 키로 자주 검색 해야하는 시나리오에 적합합니다. 예를 들어, 사용자 이름과 해당 사용자 ID가 포함 된 다양한 사용자 정보가있는 경우 Array_flip () 및 Array_Search () 의 조합을 사용하여 사용자 ID를 기반으로 사용자 이름을 얻을 수 있습니다. 효율성을 크게 향상시킬 수 있습니다.
<?php
$userIDs = [
'John' => 1001,
'Jane' => 1002,
'Tom' => 1003
];
// 할 것이다 ID 열쇠로
$flippedUserIDs = array_flip($userIDs);
// 사용자를 찾으십시오ID~을 위한1002사용자 이름
$username = array_search(1002, $flippedUserIDs);
echo "The username for userID 1002 is: " . $username;
?>
출력 결과 :
The username for userID 1002 is: Jane
Array_flip ()는 값이 고유 한 배열 만 처리 할 수 있습니다. 배열의 값에 중복이있는 경우 array_flip ()는 마지막 값을 키로 유지하고 이전 값은 덮어 씁니다.
Array_Search () 가 값을 찾을 수 없으면 값 을 반환하므로 반환 값을 사용할 때는주의를 기울여야합니다.
이 기사가 Array_flip () 및 Array_Search ()를 사용하여 값에서 키로 빠르게 찾는 방법을 더 잘 이해하는 데 도움이되기를 바랍니다. 더 많은 질문이 있거나 추가 도움이 필요하면 언제든지 질문하십시오!