PHP array_unique() Function

Quick summary: The PHP array_unique() function removes duplicate values from an array.

PHP array_unique() Syntax

array_unique(array $array, int $flags = SORT_STRING): array
PHP

PHP array_unique() Basic examples

var_dump(array_unique([1,2,2,3]));
PHP
Output:
array(3) { [0]=> int(1) [1]=> int(2) [3]=> int(3) }

Removes duplicate values and preserves keys.

PHP array_unique() Real-world usage

$tags = ['php','php','twig'];
var_dump(array_values(array_unique($tags)));
PHP
Output:
array(2) { [0]=> string(3) "php" [1]=> string(4) "twig" }

Creates a list of unique tags.

PHP array_unique() Edge cases

var_dump(array_unique(['1', 1]));
PHP
Output:
array(1) { [0]=> string(1) "1" }

Comparison is non-strict.

PHP array_unique() Common mistakes

Expecting strict comparison

array_unique uses loose comparison by default.

Incorrect
array_unique(['1', 1]);
Correct
array_unique(['1', 1], SORT_STRING);

Specify sorting flags when needed.

PHP array_unique() Frequently Asked Questions

What does array_unique() do?

array_unique() removes duplicate values from an array.

Does it preserve keys?

Yes.

Does it modify original array?

No.

Is it case-sensitive?

Yes.

Can it handle objects?

No, only scalar values.

Use case?

Removing duplicates from datasets.

Maintains order?

Yes.

Performance?

Depends on size.

Handles associative arrays?

Yes.

Alternative?

array_flip + array_keys.

Can remove numeric duplicates?

Yes.

Returns empty array?

If input is empty.

PHP array_unique() Related PHP Functions