Combinaison de deux fichier textes

Fermé
safingfight - 18 avril 2017 à 14:35
 Utilisateur anonyme - 18 avril 2017 à 16:02
Bonjour, j'aimerais pouvoir combiner ces deux fichiers textes acteurs.txt et suffix.txt de la manière suivante :

dicaprio0
bradpitt0
deniro0
dicaprio1
bradpitt1
deniro1
dicaprio2
bradpitt2
deniro2

acteurs.txt
dicaprio
bradpitt
deniro


suffix.txt
0
1
2


Je bloque visiblement quelque part après avoir retourné à de multiples reprises ce code, à hauteur du peu de connaissances que j'ai.

$list = fopen("acteurs.txt", "r") or die("Impossible d'ouvrir le fichier");
$suffix = file("suffix.txt", FILE_SKIP_EMPTY_LINES) or die("Impossible d'ouvrir le fichier");
$i = 0;
$count = count($suffix);

while(!feof($list )) {
while($i != $count) {
  echo fgets($list ).$suffix[$i]."<br>";
}
$i++;
}
fclose($list );
A voir également:

1 réponse

Utilisateur anonyme
18 avril 2017 à 16:02
Déjà il faut inverser l'ordre de tes boucles, vu que c'est le suffixe qui doit être appliqué à chaque "acteur".
Après la fonction file retourne un tableau avec dedans chaque ligne, donc utilise un foreach au lieu d'un while. Et du coup fait de même pour tes acteurs, après je sais pas si tu as mis un fichier acteurs à titre d'exemple, et que tes données sont différentes, mais si tu prend lignes par lignes pour ajouté le suffixe, vaut mieux utiliser file.

Du coup ça donne un truc comme ça:

$list = file("acteurs.txt", FILE_SKIP_EMPTY_LINES) or die("Impossible d'ouvrir le fichier acteurs.txt");
$suffixes = file("suffix.txt", FILE_SKIP_EMPTY_LINES) or die("Impossible d'ouvrir le fichier suffix.txt");

foreach ($suffixes as $suffix) {
	foreach ($list as $item) {
		echo trim($item).trim($suffix).'<br>';
	}
}


Après je sais pas si tu avais testé ta fonction, mais j'ai eu le droit à un boucle infini qui a fait planté mon PC.
1