Supprimer doublons dans une chaîne

Résolu/Fermé
Thebuzz Messages postés 41 Date d'inscription vendredi 27 avril 2007 Statut Membre Dernière intervention 24 octobre 2010 - 14 sept. 2008 à 02:43
Thebuzz Messages postés 41 Date d'inscription vendredi 27 avril 2007 Statut Membre Dernière intervention 24 octobre 2010 - 15 sept. 2008 à 12:42
Bonjour chères toutes et tous,

Je recherche le moyen de supprimer les doublons dans ma chaîne obtenue suite à preg_match_all. Mon code fonctionnel actuellement est le suivant :

$q=mysql_query("SELECT * FROM essai where produit = 1);
$r=mysql_fetch_array($q);
$texte=$r['exemple'];
preg_match_all('/[a-z-&ea;]{10,80}/i', $texte, $matches);

$nb=count($matches[0]);
for($a=0;$a<$nb;$a++){
	$resultats .= $matches[0][$a] .', ';
}


L'affichage de exemple suite à ma requête : "la vie est intéressante et la vigne est intéressante"

L'affichage désiré selon mon code : "intéressante"

J'ai lu que array_unique permettait ce genre de recherche de doublon, mais je ne sais pas ou comment l'implémenter, si c'est le cas.

Merci de votre aide

A+
A voir également:

1 réponse

Thebuzz Messages postés 41 Date d'inscription vendredi 27 avril 2007 Statut Membre Dernière intervention 24 octobre 2010 1
15 sept. 2008 à 12:42
Chers tous,

Après une nuit d'enfer, mon code résolu est le suivant :
$q=mysql_query("SELECT * FROM essai where produit = 1);
$r=mysql_fetch_array($q);
$texte=$r['exemple'];

if(false !== preg_match_all("/[a-z-&;]{5,80}/i", $texte, $matches)) {
	if(is_array($matches[0]) && sizeof($matches[0])>0) {
		$matches = array_unique($matches[0]);
	}
	
	foreach($matches as $a => $match) {
		$resultats .= $match. ', ';
	}
}


Il fallait le dire

A+
-1