par
dogmongo » 11 avr. 2009, 19:29
Bonjour,
je développe actuellement une amélioration sur mon CMS, mon objectif est de développer une audite des pages qui analyse les métas tag et corrige mes erreurs, une de mes fonctions me cause problème, elle à pour but de compter les mots en double dans une chaine et me les afficher avec le nombre de fois qu'ils si trouvent.
Imaginons la chaine suivante
$tableau = "php france, php france, php, france php et ancore php";
function comptemotsdouble($tableau) ;
La fonction
function comptemotsdouble($tableau) {
reset($tableau);
foreach($tableau as $url) { //Je récupère les mots de la chaine
$url = trim($url,","); // je vire les virgules
if(isset($mot[$url])){
$mot[$url] = $mot[$url] + 1 ;
}else{
$mot[$url] = 1 ;
}
if($etat[$url] == 0){
echo $url ."(". $mot[$url] ."), " ;
}else{
$etat[$url] = $etat[$url] + 1 ;
$etat[$url] = 1 ;
}
}
}
J’obtiens donc à mon désarroi
Code : Tout sélectionner
php(1), france(1), php(2), france(2), php(3), france(3), php(4), et(1), ancore(1), php(5),
Et j'aurai plutôt souhaiter voir le résultat suivant
Voir le summum
j'ai plus trop les yeux en face des trous alors un coup de pouce serait le bien venu
merci d'avance

Bonjour,
je développe actuellement une amélioration sur mon CMS, mon objectif est de développer une audite des pages qui analyse les métas tag et corrige mes erreurs, une de mes fonctions me cause problème, elle à pour but de compter les mots en double dans une chaine et me les afficher avec le nombre de fois qu'ils si trouvent.
[b]Imaginons la chaine suivante[/b]
[php]$tableau = "php france, php france, php, france php et ancore php";
function comptemotsdouble($tableau) ;[/php]
[b]La fonction[/b]
[php]
function comptemotsdouble($tableau) {
reset($tableau);
foreach($tableau as $url) { //Je récupère les mots de la chaine
$url = trim($url,","); // je vire les virgules
if(isset($mot[$url])){
$mot[$url] = $mot[$url] + 1 ;
}else{
$mot[$url] = 1 ;
}
if($etat[$url] == 0){
echo $url ."(". $mot[$url] ."), " ;
}else{
$etat[$url] = $etat[$url] + 1 ;
$etat[$url] = 1 ;
}
}
}
[/php]
J’obtiens donc à mon désarroi
[code]
php(1), france(1), php(2), france(2), php(3), france(3), php(4), et(1), ancore(1), php(5),
[/code]
Et j'aurai plutôt souhaiter voir le résultat suivant
[code]
france(3), et(1), ancore(1), php(5),
[/code]
Voir le summum
[code]
france(3), php(5)
[/code]
j'ai plus trop les yeux en face des trous alors un coup de pouce serait le bien venu
merci d'avance :wink: