>  기사  >  백엔드 개발  >  평면 배열의 열 값과 일치하는 배열 행을 유지하는 방법은 무엇입니까?

평면 배열의 열 값과 일치하는 배열 행을 유지하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-24 04:17:02500검색

How to Retain Array Rows with Matching Column Values from a Flat Array?

별도의 평면 배열에서 일치하는 열 값이 있는 배열 행 유지

여러 열이 있는 배열 $arr1과 두 번째 평면 배열 $가 제공됩니다. 특정 열 값 목록이 포함된 arr2의 경우 목표는 $arr1을 필터링하고 특정 열의 값이 $arr2의 요소와 일치하는 행만 추출하는 것입니다.

해결책:

이 작업을 효율적으로 수행하기 위해 array_uintersect()를 사용할 수 있습니다. 이 기본 기능은 비교 중에 정렬 알고리즘을 활용하여 실행 속도를 향상시킵니다. 비교 논리를 결정하려면 배열 두 개와 사용자 정의 콜백 함수가 필요합니다.

제공된 코드에서 콜백 함수는 배열 구조 분해를 활용하여 $arr1 및 $arr2의 각 요소에서 id 열에 액세스합니다. id 열이 없으면 기본값은 매개변수 값입니다.

비교에서는 두 배열의 id 값이 동일한지 확인하여 $arr1의 행이 $arr2의 값과 일치하는지 확인합니다. 그 결과 $arr1에서 원하는 행만 포함된 새 배열이 생성됩니다.

이 접근 방식은 함수 호출이 최소화되고 실행 시간이 최적화되어 in_array()의 반복 호출에 비해 뛰어난 성능을 제공합니다.

위 내용은 평면 배열의 열 값과 일치하는 배열 행을 유지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.