Open In App

How to remove duplicate values from array using PHP ?

Last Updated : 08 Nov, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will discuss how to remove duplicate elements from an array in PHP. We can get the unique elements by using array_unique() function. This function will remove the duplicate values from the array.

Syntax

array array_unique($array, $sort_flags);

Note: The keys of the array are preserved i.e. the keys of the not removed elements of the input array will be the same in the output array.

Parameters

This function accepts two parameters that are discussed below:

  • $array: This parameter is mandatory to be supplied and it specifies the input array from which we want to remove duplicates.
  • $sort_flags: It is an optional parameter. This parameter may be used to modify the sorting behavior using these values:
    • SORT_REGULAR: This is the default value of the parameter $sort_flags. This value tells the function to compare items normally (don’t change types).
    • SORT_NUMERIC: This value tells the function to compare items numerically.
    • SORT_STRING: This value tells the function to compare items as strings.
    • SORT_LOCALE_STRING: This value tells the function to compare items as strings, based on the current locale.

Return Value

The array_unique() function returns the filtered array after removing all duplicates from the array.

Example 1: PHP program to remove duplicate values from the array.

PHP




<?php
   
// Input Array
$a = array(
    "red",
    "green",
    "red",
    "blue"
);
 
// Array after removing duplicates
print_r(array_unique($a));
?>


Output:

Array
(
[0] => red
[1] => green
[3] => blue
)

Example 2: PHP program to remove duplicate elements from an associative array.

PHP




<?php
   
// Input array
$arr = array(
    "a" => "MH",
    "b" => "JK",
    "c" => "JK",
    "d" => "OR"
);
 
// Array after removing duplicates
print_r(array_unique($arr));
?>


Output:

Array
(
[a] => MH
[b] => JK
[d] => OR
)

Example 3: This is another way of removing the duplicates from the array using the PHP in_array() method.

PHP




<?php
   
// This is the array in which values
// will be stored after removing
// the duplicates
$finalArray = array();
 
// Input array
$arr = array(
    "a" => "MH",
    "b" => "JK",
    "c" => "JK",
    "d" => "OR"
);
foreach ($arr as $key => $value)
{
    // If the value is already not stored
    // in the final array
    if (!in_array($value, $finalArray)) $finalArray[$key] = $value;
}
// End foreach
print_r($finalArray);
 
?>


Output:

Array
(
[a] => MH
[b] => JK
[d] => OR
)


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads