{PHP}
Fermé
Jeremy_me
Messages postés
31
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
24 septembre 2009
-
3 sept. 2009 à 03:29
Jeremy_me Messages postés 31 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 24 septembre 2009 - 3 sept. 2009 à 20:47
Jeremy_me Messages postés 31 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 24 septembre 2009 - 3 sept. 2009 à 20:47
A voir également:
- {PHP}
- Easy php - Télécharger - Divers Web & Internet
- \R php ✓ - Forum PHP
- Br php ✓ - Forum PHP
- Expert php - Télécharger - Langages
- Php echo image ✓ - Forum PHP
4 réponses
Jibe555
Messages postés
59
Date d'inscription
mercredi 2 septembre 2009
Statut
Membre
Dernière intervention
4 novembre 2009
19
3 sept. 2009 à 03:44
3 sept. 2009 à 03:44
$final = ""; for ($i = 0; $i< strlen($v1); $i++) { if ($v1[$i] != $v2[$i]) $final = $final . "<font color="red">".$v2[$i]."</font>"; else $final = $final . $v2[$i]; }
Ce code n'est pas optimal car il répète les balises si plusieurs caractères sont successivement différents.
Il part également du principe que $v1 et $v2 sont de même longueur.
Mais ça peut être une piste...
Jeremy_me
Messages postés
31
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
24 septembre 2009
1
3 sept. 2009 à 06:57
3 sept. 2009 à 06:57
Merci beaucoup. et surtout, merci d'avoir précisé les limitations! Je vais essayer ca, je t'en donne des nouvelles :)
Bonne nuit! (Ici il est 00:56 :P )
Bonne nuit! (Ici il est 00:56 :P )
Bonjour Jeremy_me et Jibe,
Jibe a répondu, et j'ai joué à faire + joli (pas de répétition de balises)
Voici le code que ça génère :
Jibe a répondu, et j'ai joué à faire + joli (pas de répétition de balises)
<HTML> <HEAD> <TITLE>Page essai PHP</TITLE> </HEAD> <STYLE> SPAN.V {color: #00ff00} SPAN.R {color: #ff0000} </STYLE> <BODY> <H1>Petite page de comparaison de deux chaines en PHP</H1> Nous sommes le <?php echo Date("j/m/Y"); ?> <P> <?php // Un petit tableau pratique pour les couleurs à afficher : $styleVertEtRouge = Array('V', 'R'); $var1 = "11111111"; $var2 = "11123141"; // En principe, on devrait aussi penser au cas ou les 2 chaînes n'on pas la même taille // ce qui n'est pas fait ici (c'est un cas d'école) $s1 = strlen($var1); $s2 = strlen($var2); echo "Comparaison de deux chaines :" . $var1 . " et "; // On doit différencier le cas du départ à caus du premier span, donc on prend -1 $precedant = -1; $courant = -1; for ($i = 0; $i < $s2; ++$i) { if ($var1[$i] == $var2[$i]) { $courant = 0; } else { $courant = 1; } if ($courant != $precedant) { if ($precedant != -1) { // ne doit pas être fait la première fois echo "</span>"; } // écrit le caractère dans la bonne couleur echo "<span class=" . $styleVertEtRouge[$courant] . ">" . $var2[$i]; $precedant = $courant; } else { echo $var2[$i]; } } echo "</span><P> terminé"; ?> </BODY> </HTML>
Voici le code que ça génère :
<HTML> <HEAD> <TITLE>Page essai PHP</TITLE> </HEAD> <STYLE> SPAN.V {color: #00ff00} SPAN.R {color: #ff0000} </STYLE> <BODY> <H1>Petite page de comparaison de deux chaines en PHP</H1> Nous sommes le 3/09/2009<P> Comparaison de deux chaines :11111111 et <span class=V>111</span><span class=R>23</span><span class=V>1</span><span class=R>4</span><span class=V>1</span><P> terminé</BODY> </HTML>
Jeremy_me
Messages postés
31
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
24 septembre 2009
1
3 sept. 2009 à 20:47
3 sept. 2009 à 20:47
Bonjour Java4ever!
Wow, merci beaucoup pour ce script! C'est génial!
Pour ce qui est de la longueur, en faite, si les deux chaines n'ont pas le même nombre de caractères, une erreur va s'afficher.
Je vous dit merci à tout les deux ;)
Bonne soirée!
ET MERCI ENCORE!!
Wow, merci beaucoup pour ce script! C'est génial!
Pour ce qui est de la longueur, en faite, si les deux chaines n'ont pas le même nombre de caractères, une erreur va s'afficher.
Je vous dit merci à tout les deux ;)
Bonne soirée!
ET MERCI ENCORE!!