Eliminare duplicati all'interno di un array

Super_nio

Nuovo Utente
7 Dic 2012
16
0
0
Salve ho un array formato in questo modo :
$array==> aaaaaa bbbbb bbbbb , ccccc ddddd ddddd , eeeee fffff fffff . ecc ecc

vorrei eliminare da ogni cella dell'array i duplicati.Avevo pensato a un'explode per ogni array così da avere array di array e utilizzare la funzione array_unique per eliminare tutti i duplicati, ma ricevo questo errore " Warning: explode() expects parameter 2 to be string ".
 
Ultima modifica:
Quindi alla fine che struttura dovrà avere l'array?

Ho un array di questo tipo : Link_modello nome_modello nome_modello , Link_modello nome_modello nome_modello , Link_modello nome_modello nome_modello.
La voce nome_modello è ripetuta 2 volte per ogni indice dell'arra.

Questo è la porzione di codice che dovrebbe levarmi il doppione da ogni indice:

for($j=0;$j<count($array[$k]);$j++){
$array_esploso[$j] = explode(" ",$array[$k]);
$array_no_duplicato[$j]=array_unique($array_esploso[$j]);
$final[$j]=implode($array_no_duplicato[$j]);

Questo ciclo for è all'interno di un altro for che mi popola la varibaile $array[$k].

L'errore restituito è questo :

Warning: explode() expects parameter 2 to be string, array given in /Applications/MAMP/htdocs/modelli_portatili.php on line 56

Warning: array_unique() expects parameter 1 to be array, null given in /Applications/MAMP/htdocs/modelli_portatili.php on line 57

Warning: implode(): Argument must be an array in /Applications/MAMP/htdocs/modelli_portatili.php on line 58

ripetuto per ogni ciclo del for.
 
PHP:
<?php
$haystack = array(
    'aaaa bbbb bbbb',
    'cccc dddd dddd',
    'eeee ffff ffff',
);

$haystack = array_map(function($element) {
    $parts = explode(' ', $element);
    $parts = array_unique($parts);

    return implode(' ', $parts);
}, $haystack);

var_dump($haystack);
Risultato:
Codice:
array(3) {
  [0]=>
  string(9) "aaaa bbbb"
  [1]=>
  string(9) "cccc dddd"
  [2]=>
  string(9) "eeee ffff"
}
 

Discussioni simili