현재 위치: > 최신 기사 목록> Array_flip () + array_values ​​() : 배열 형식 재구성 조합 기술

Array_flip () + array_values ​​() : 배열 형식 재구성 조합 기술

M66 2025-05-18

PHP 배열 작업에서 Array_flip ()Array_Values ​​() 는 두 가지 매우 강력한 기능입니다. 혼란 스럽거나 불규칙하거나 재구성 해야하는 어레이를 다루는 경우이 두 기능의 조합은 예상치 못한 효율성을 가져올 수 있습니다.

이 기사는이 두 기능을 조합하여 PHP 배열의 구조와 형식을 빠르게 재구성하는 방법을 소개합니다.

1. array_flip () 및 array_values에 대한 기본 이해 ()

Array_flip ()

Array_flip () 의 목적은 배열의 키와 값을 바꾸는 것 입니다. 이는 값으로 키를 찾아야하는 일부 시나리오에서 매우 유용합니다.

 $input = ['a' => 'apple', 'b' => 'banana'];
$result = array_flip($input);
// 결과: ['apple' => 'a', 'banana' => 'b']

참고 : 배열 값이 고유하지 않은 경우 Array_flip ()는 중복 값에 해당하는 키를 무시합니다.

Array_Values ​​()

Array_Values ​​()인덱스 배열을 재구성 하고 배열의 값을 0부터 시작하는 인덱스 키로 개출하는 것입니다.

 $input = ['first' => 'apple', 'second' => 'banana'];
$result = array_values($input);
// 결과: ['apple', 'banana']

2. 둘의 조합에 대한 일반적인 시나리오

외환, 인덱스를 재 배열하고 배열 형식을 표준화 해야하는 경우 Array_flip ()Array_Values ​​()를 결합하는 것이 매우 편리합니다.

샘플 시나리오 : 사용자 제출 태그 데이터 정리

사용자 양식에서 다양한 태그를받는다고 가정합니다.

 $tags = ['php', 'html', 'css', 'php', 'javascript', 'html'];

당신은 희망 :

  • 복제물을 제거하십시오

  • 키 값을 재주문하여 0에서 증가합니다

당신은 이것을 할 수 있습니다 :

 $uniqueTags = array_values(array_flip(array_flip($tags)));

이 코드 분석 :

  1. 첫 번째 array_flip ($ tags) : 태그를 키로 사용하여 중복 값을 제거하십시오.

  2. 두 번째 array_flip (...) : 원래 "값"을 복원하지만 중복 제거되었습니다.

  3. 마지막 array_values ​​(...) : 키를 숫자 인덱스로 재구성합니다.

최종 결과 :

 ['php', 'html', 'css', 'javascript']

깨끗하고 중복 제거, 깔끔한 인덱싱!

3.보다 복잡한 데이터 정리 예

예를 들어 URL 매개 변수로부터 다양한 옵션을 받고 있다고 가정합니다.

 https://m66.net/filter.php?tags[]=php&tags[]=php&tags[]=mysql&tags[]=laravel

처리 코드는 다음과 같습니다.

 $tags = $_GET['tags'] ?? [];
$cleanTags = array_values(array_flip(array_flip($tags)));

이를 통해 $ CleanTags 변수에는 중복 제거 태그가 포함되어 있으며 표준 색인 배열에 있습니다.

4. 요약

  • Array_flip ()를 사용하면 키의 독창성을 영리하게 활용하여 중복 제거를 달성 할 수 있습니다.

  • 그런 다음 Array_Values ​​()를 사용하여 깨끗한 색인 배열로 복원하십시오.

  • 조합으로 사용되며, 중복 데이터 및 형식 배열 구조를 처리하는 데 매우 효율적입니다.

  • 사용자 입력 처리, 구성 옵션, 레이블 데이터 등과 같은 시나리오에서 특히 사용하기에 적합합니다.

이 두 기능의 조합은 코드를보다 간결하게 만들뿐만 아니라 foreach 또는 in_array () 와 같은 기능에 대한 의존성을 줄여 성능 및 가독성 향상을 줄입니다.