Removing Duplicate Elements from an Array in PHP

By David Sklar Viewed: 31767 times Emailed: 188 times Printed: 181 times Bookmark and Share



You want to eliminate duplicates from an array.

If the array is already complete, use array_unique( ), which returns a new array that contains no duplicate values:

$unique = array_unique($array);

If you create the array while processing results, here is a technique for numerical arrays:

foreach ($_REQUEST['fruits'] as $fruit) {
    if (!in_array($array, $fruit)) { $array[ ] = $fruit; }
}

Here's one for associative arrays:

foreach ($_REQUEST['fruits'] as $fruit) {
    $array[$fruit] = $fruit;
}

Once processing is completed, array_unique( )is the best way to eliminate duplicates. But, if you're inside a loop, you can eliminate the duplicate entries from appearing by checking if they're already in the array.

An even faster method than using in_array( )is to create a hybrid array in which the key and the value for each element are the same. This eliminates the linear check of in_array( ) but still allows you to take advantage of the array family of functions that operate over the values of an array instead of the keys.

In fact, it's faster to use the associative array method and then call array_values( )on the result (or, for that matter, array_keys( ), but array_values( ) is slightly faster) than to create a numeric array directly with the overhead of in_array( ).




Comments(0)


Be the first one to add a comment

Your name (required):


Your email(required, will not be shown to the public):


Your sites URL (optional):


Your comments:


Enter Code:
The Captcha image

Latest Tutorials

[2010-07-03]A Basic Example using PHP in AWS (Amazon Web Services)
[2010-07-03]Building a Video Sharing Site using PHP in AWS
[2010-06-30]XMLRPC for PHP - A simple client and server program
[2010-06-29]How to fix: Warning: Visiting this site may harm your computer - domainameat.cc
[2009-06-13]PHP Warning: Unknown(): Unable to load dynamic library '/usr/local/php4/lib/php/extensions/no-debug ......
[2009-02-24]Using Text file as database in PHP
[2009-02-07]Parent: child process exited with status 3221225477 -- Restarting
[2009-01-14]Install and use PHPUnit to test your PHP pages for errors.
[2008-12-29]Using Codeigniter for PHP application development
[2008-12-01]Creating or Opening a File in PHP
[2008-12-01]Opening a Remote File in PHP
[2008-12-01]Reading contents of a File into a String in PHP
[2008-12-01]Counting Lines, Paragraphs, or Records in a File using pc_split_paragraphs() in PHP
[2008-12-01]Reading word by word from a file in PHP
[2008-12-01]Reading .ini files in PHP

More Latest News

Most Viewed Articles (in last 30 days)
isset() function in PHP
Reading .CSV file in PHP
Parent: child process exited with status 3221225477 -- Restarting
Handling BLOB in PHP and MySQL
Extract files from a .zip file using PHP
Find Difference between two dates in PHP
Appending One Array to Another in PHP
Upload and Download files with FTP in PHP
preg_split() and explode() in PHP
public, protected, and private Properties in PHP
Install and use PHPUnit to test your PHP pages for errors.
preg_match(), function preg_match_all(), preg_grep() in PHP
Reading and Writing .gz files in PHP
Reading word by word from a file in PHP
Opening a Remote File in PHP
Most Emailed Articles (in last 30 days)
Opening a Remote File in PHP
Reading .CSV file in PHP
Counting Lines, Paragraphs, or Records in a File using pc_split_paragraphs() in PHP
Reading word by word from a file in PHP
Removing Duplicate Elements from an Array in PHP
Reading contents of a File into a String in PHP
Find Difference between two dates in PHP
PHP Warning: Unknown(): Unable to load dynamic library '/usr/local/php4/lib/php/extensions/no-debug ......
isset() function in PHP
Different versions of PHP - History and evolution of PHP
Traversing Arrays Using list() and each() in PHP
Setting cookies in PHP
.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable
Creating or Opening a File in PHP
Extract files from a .zip file using PHP