Modérateur PHPfrance |
10684 Messages
17 févr. 2006, 12:43
Tu a plusieurs solutions par expression régulière, par recherche d'index... Tu peux par exemple utiliser la fonction explode() sur le caractère ":" pour diviser chacune de tes lignes en un tableau à deux éléments, le premier contenant le libellé, le deuxième la valeur :
foreach($ligneDuFichier as $ligne) {
$tab = explode(":", $ligne); // sépare libellé et valeur dans des cellules du tableau
if($tab[1]==$laValeurCherchee) {
echo $tab[0]; // affiche le libellé associé
break; // je suppose qu'une fois trouvé il n'y en a pas d'autre, inutile de continuer la boucle
}
}
Ou avec une expression régulière (à tester, chuis pas sur du pattern

) :
foreach($ligneDuFichier as $ligne) {
if(ereg("(.*):".$laValeurCherchee, $ligne, $regs) {
echo $regs[1]; // affiche le libellé capturé par la parenthèse
break; // inutile de continuer la boucle
}
}