Bonjour à tous,

Je vous expose mon problème : J'essaie de rechercher un mot dans un fichier puis ayant trouvé la ligne où se situe ce mot, j'essaie d'afficher le reste de cette chaîne. Un exemple est plus explicite :
Le fichier dans lequel je recherche est constitué de plusieurs lignes de la sorte :
bonjour;toto
bonsoir;titi
coucou;tata
etc..
J'essaie de trouver par exemple la ligne "bonjour;toto" et d'afficher seulement "toto".
Voila mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$fichiergencod = fopen('./gencod.txt',"r");
if ($fichiergencod) {
while (!feof($fichiergencod))
{ 
$buffer = fgets($fichiergencod, 4096); // On récupère ligne par ligne
// Recherche dans gencod.txt
$domain = strstr($buffer, $nomfichier[0].';'); // Je récupère bien toute la ligne
echo $domain; // Il m'affiche bien toute la ligne
$gencod = (explode(';',$domain)); // Je sépare les 2 mots
echo $gencod[0]; // Affiche bien "bonjour"
echo $gencod[1]; // Erreur : Undefined offset: 1
}
fclose($fichiergencod);
}
Donc ce que je ne comprends pas c'est pourquoi il me met une erreur quand je fais "echo $gencod[1];" pourtant la fonction explode doit bien séparer la chaîne en un tableau dans lequel $gencod[0]=bonjour et $gencod[1]=toto non ? Je me trompe peut-être ?

Si quelqu'un a une idée ?