[php] comparaison de fichiers textes

Fermé
papyrus - 5 avril 2009 à 22:11
 Utilisateur anonyme - 5 avril 2009 à 22:57
Bonjour,
je débute en php et pour m'entraîner, je me suis attelée à l'élaboration d'un site qui aurai pour but de comparer deux fichiers.

pour faciliter les choses, j'ai "converti" mes deux fichiers en tableaux $tab et $tab2 à l'aide de la fonction explode. J'affiche mes tableaux et tout se passe bien.

maintenant je veux comparer chaque "case" de mon tableau.
j'ai utilisé ceci :

for($i =0; $i <= sizeof($tab); $i++) {
     for($j =0; $j <= sizeof($tab2); $j++) {
          if ($tab==$tab2) {
               echo "youpi!";
	       }
	}
}


le problème c'est que sur ma page "youpi" s'affiche à l'infini, que les tableaux soient identiques ou différents.
en somme ma fonction ne sert à rien.

Avez vous une idée d'ou vient le problème?
merci
A voir également:

2 réponses

Utilisateur anonyme
5 avril 2009 à 22:31
Bonsoir,
Essaye-ceci :
if (sizeof($tab)==sizeof($tab2)) {
      for ($i=0;$i<=sizeof($tab);$i++) {
             if ($tab[$i]==$tab2[$i]) {
                   echo "Youpi";
             }
             else { echo "Pas youpi"; }
     }
}


Tu peux utiliser aussi un foreach. D'ailleurs, c'est peut être ce qui est le plus conseillé.
0
merci adenora
j'ai essayé mais ça n'affiche rien. plus un youpi...

j'ai supprimé
if (sizeof($tab)==sizeof($tab2)) {
car a priori mes deux tableaux n'ont pas la même taille (c'est bien ça sizeof ?)

j'ai tenté ca :

if (sizeof($tab)==sizeof($tab2)) {
      for ($i=0;$i<=sizeof($tab);$i++) {
             if ($tab[$i]==$tab2[$i]) {
                   echo "Youpi";
             }
             else { echo "Pas youpi"; }
     }
}


c'est un peu mieux, maintenant ça m'affiche "youpi" quand le texte est strictement identique.

j'ai essayé les foreach, mais visiblement je ne sais pas l'utiliser. je vais creuser de ce coter.
0
Utilisateur anonyme
5 avril 2009 à 22:57
if (sizeof($tab)==sizeof($tab2)) 
sert effectivement pour comparer la taille des deux tableaux. Je ne savais pas justement si tes tableaux devaient avoir la même taille ou pas.
0