Array remove the same php -


i have array this:

array (     [0] => array         (             [fileid] => 7             [remarks] =>              [filename] => whomovedmycheese - copy.pdf             [type] => application/pdf             [size] => 500624         )      [1] => array         (             [fileid] => 7             [remarks] =>              [filename] => whomovedmycheese.pdf             [type] => application/pdf             [size] => 500624         )      [2] => array         (             [fileid] => 8             [remarks] =>              [filename] => whomovedmycheese - copy.pdf             [type] => application/pdf             [size] => 500624         )      [3] => array         (             [fileid] => 8             [remarks] =>              [filename] => whomovedmycheese.pdf             [type] => application/pdf             [size] => 500624         )  ) 

this array want remove duplicate. tried remove duplicated using below code.

$input4 = array_map("unserialize", array_unique(array_map("serialize", $basicinfo3))); $new_data3 = array_values($input4); 

but result still same starting array. in above code $basicinfo has value of array above.what want remove duplicate array below.

array     (         [0] => array             (                 [fileid] => 7                 [remarks] =>                  [filename] => whomovedmycheese - copy.pdf                 [type] => application/pdf                 [size] => 500624             )          [1] => array             (                 [fileid] => 7                 [remarks] =>                  [filename] => whomovedmycheese.pdf                 [type] => application/pdf                 [size] => 500624             )     ) 

update

 array (     [008-408-601-000-0] => array         (             [id] => 008-408-601-000             [lastname] => smith             [firstname] => john             [email] => john@yahoo.com             [address] => array                 (                     [0] => array                         (                             [language] => c++                         )                      [1] => array                         (                             [language] => c++                         )                      [2] => array                         (                             [language] => c++                         )                      [3] => array                         (                             [language] => java                         )                      [4] => array                         (                             [language] => java                         )                      [5] => array                         (                             [language] => java                         )                  )          )      [002-408-641-000-0] => array         (             [id] => 008-408-601-000             [lastname] => smith             [firstname] => jack             [email] => jack@yahoo.com             [address] => array                 (                     [0] => array                         (                             [language] => c++                         )                      [1] => array                         (                             [language] => c++                         )                      [2] => array                         (                             [language] => c++                         )                      [3] => array                         (                             [language] => java                         )                      [4] => array                         (                             [language] => java                         )                      [5] => array                         (                             [language] => java                         )                  )          )      [001-002-003-000-0] => array         (             [id] => 008-408-601-000             [lastname] => smith             [firstname] => jean             [email] => jean@yahoo.com             [address] => array                 (                     [0] => array                         (                             [language] => c++                         )                      [1] => array                         (                             [language] => c++                         )                      [2] => array                         (                             [language] => c++                         )                      [3] => array                         (                             [language] => java                         )                      [4] => array                         (                             [language] => java                         )                      [5] => array                         (                             [language] => java                         )                  )          )        ) 

you can't use function above since takes account whole array batch uniqueness, can see, fileid differs same filename. if need based on filename, normal loop should suffice.

in sample output, seems first ones found priority simple isset should okay.

$input4 = array(); foreach($basicinfo3 $values) {     if(!isset($input4[$values['filename']])) {         $input4[$values['filename']] = $values; // if doesn't exist yet, push     } }  $input4 = array_values($input4); // simple reindex 

sample output


Comments

Popular posts from this blog

java - Spring Data JPA: Why findOne(id) executing delete query internally? -

python - Mongodb How to add addtional information when aggregating? -

java - Incorrect order of records in M-M relationship in hibernate -