Delete duplicated element from an mutidimension array - PHP -


i have 2 arrays , $my_array. , there duplicated arrays ['mot clé'] diffrent position here's $my_array:

array ( [0] => array     (         [position] => 0         [moteur] => bing.com france - (tout afficher)         [mot clé] => bts esf 24         [site] => http://www.test.com         [page positionnée] => pas de résultat         [titre de la page] =>          [date] => 28/02/2014     )  [1] => array     (         [position] => 0         [moteur] => bing.com france - (tout afficher)         [mot clé] => bts esf 33         [site] => http://www.test.com         [page positionnée] => pas de résultat         [titre de la page] =>          [date] => 28/02/2014     )  [2] => array     (         [position] => 1         [moteur] => bing.com france - (tout afficher)         [mot clé] => bts esf 33         [site] => http://www.test.com         [page positionnée] => pas de résultat         [titre de la page] =>          [date] => 28/02/2014     )  [3] => array     (         [position] => 5         [moteur] => bing.com france - (tout afficher)         [mot clé] => bts esf 33         [site] => http://www.test.com         [page positionnée] => pas de résultat         [titre de la page] =>          [date] => 28/02/2014     )  ) 

i want unset duplicate leave 1 has biggest ['position']! idea on how can achiev ? thanks!

try :

<?php $arr = array(     array(         "position" => 0,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "bts esf 33",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 0,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "test",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 0,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "bts esf 33",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 1,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "bts esf 33",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 1,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "test",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 5,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "bts esf 33",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 3,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "test",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 0,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "testing",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 8,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "testing",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ),     array(         "position" => 9,         "moteur" => "bing.com france - (tout afficher)",         "mot clé" => "testing",         "site" => "http://www.test.com",         "page positionnée" => "pas de résultat",         "titre de la page" => "",         "date" => "28/02/2014"     ), );  function sort_compare($a, $b) {     return (($a["position"] == $b["position"]) ? 0 : (($a["position"] > $b["position"]) ? -1 : 1)); }  function remove_duplicates($array) {     $return = array();     $tmp = array();     foreach($array $key => $value) {         $tmp[$value["mot clé"]][] = $value;     }      foreach($tmp $key => $value) {         usort($tmp[$key], "sort_compare");     }      foreach($tmp $key => $value) {         if(is_array($value) && isset($value[0])) $return[] = $value[0];     }      return $return; }  echo '<pre>'; print_r(remove_duplicates($arr)); echo '</pre>'; ?> 

i have taken consideration might have other types of "mot clé"'s in array :)


Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -