>  기사  >  백엔드 개발  >  PHP의 특정 키-값 쌍을 기반으로 배열에서 중복을 제거하는 방법은 무엇입니까?

PHP의 특정 키-값 쌍을 기반으로 배열에서 중복을 제거하는 방법은 무엇입니까?

WBOY
WBOY원래의
2024-04-28 18:18:01714검색

PHP에서는 array_unique() 함수를 사용하여 특정 키-값 쌍을 기반으로 배열에서 중복 항목을 제거합니다. 함수를 호출할 때 배열을 매개변수로 전달하고 정렬 방법을 두 번째 매개변수로 선택합니다. 이 함수는 지정된 키-값 쌍을 기반으로 중복 항목이 제거된 새 배열을 반환합니다.

如何在 PHP 中根据特定键值对去除数组中的重复项?

PHP에서 특정 키-값 쌍을 기반으로 배열에서 중복을 제거하는 방법

PHP에서 array_unique() 함수를 사용하여 특정 키-값 쌍을 기반으로 배열에서 중복을 제거합니다. 키-값 쌍이 중복되었습니다. 이 함수는 배열을 인수로 받고 지정된 키-값 쌍을 기반으로 중복이 제거된 새 배열을 반환합니다. array_unique() 函数可以根据特定键值对去除数组中的重复项。该函数接收一个数组作为参数,并返回一个新数组,其中重复项已根据指定的键值对被移除。

用法:

$array = [
    ['name' => 'John', 'age' => 30],
    ['name' => 'Mary', 'age' => 25],
    ['name' => 'John', 'age' => 30],
    ['name' => 'Bob', 'age' => 20],
];

$uniqueArray = array_unique($array, SORT_REGULAR);

print_r($uniqueArray);

输出:

Array
(
    [0] => Array
        (
            [name] => John
            [age] => 30
        )

    [1] => Array
        (
            [name] => Mary
            [age] => 25
        )

    [2] => Array
        (
            [name] => Bob
            [age] => 20
        )
)

如上所示,array_unique() 根据键值对 ['name', 'age'] 去除了数组中的重复项。

可选参数:

array_unique() 函数的第二个参数指定如何比较数组元素,有以下选项:

  • SORT_REGULAR: 正常比较元素
  • SORT_NUMERIC: 比较元素作为数字
  • SORT_STRING: 比较元素作为字符串
  • SORT_LOCALE_STRING: 以特定区域设置比较元素作为字符串

实战案例:

假设你有以下数组,其中包含来自不同订单的订单项:

$orders = [
    ['id' => 1, 'item_id' => 1, 'quantity' => 2],
    ['id' => 2, 'item_id' => 2, 'quantity' => 1],
    ['id' => 3, 'item_id' => 1, 'quantity' => 3],
];

你可以使用以下代码根据订单项ID (item_id) 和数量 (quantity) 去除重复项:

$uniqueOrders = array_unique($orders, SORT_REGULAR);

这将创建一个新数组 $uniqueOrders,其中每个订单项的 item_idquantity

🎜사용법: 🎜🎜rrreee🎜🎜출력: 🎜🎜rrreee🎜위에 표시된 것처럼 array_unique()는 키-값 쌍 ['name', 'age']를 기반으로 합니다. 배열에서 중복을 제거했습니다. 🎜🎜🎜선택 매개변수: 🎜🎜🎜array_unique() 함수의 두 번째 매개변수는 배열 요소를 비교하는 방법을 지정합니다. 다음과 같은 옵션이 있습니다. 🎜
  • 🎜SORT_REGULAR: 🎜 일반 요소 비교
  • 🎜SORT_NUMERIC: 🎜 요소를 숫자로 비교
  • 🎜SORT_STRING: 🎜 요소를 문자열로 비교
  • 🎜SORT_LOCALE_STRING: 🎜 요소를 문자로 비교 특정 로케일 문자열
🎜🎜실제 예: 🎜🎜🎜다양한 주문의 라인 항목을 포함하는 다음 배열이 있다고 가정합니다. 🎜rrreee🎜 다음 코드를 사용하여 중복 항목을 제거하기 위한 주문 항목 ID(item_id) 및 수량(수량): 🎜rrreee🎜이렇게 하면 $uniqueOrders가 생성됩니다. 각 주문 항목에 대한 code>item_id 및 수량 조합은 모두 고유합니다. 🎜

위 내용은 PHP의 특정 키-값 쌍을 기반으로 배열에서 중복을 제거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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