Récupérer date contenue dans un fichier texte
Résolu/Fermé
Ablawa
Ablawa
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
Ablawa
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
A voir également:
- Récupérer date contenue dans un fichier texte
- Récupérer date contenue dans un fichier texte ✓ - Forum - Webmaster
- Python récupérer le contenu d'un fichier ✓ - Forum - Python
- Récupérer les données d'un fichier texte java - Forum - Java
- Batch : Inclure le contenu d'un fichier texte dans une variable. ✓ - Forum - Autoit / batch
- Comment récupérer le contenu suprimé du fichier word ✓ - Forum - Word
7 réponses
PhP
22 oct. 2007 à 21:00
- Messages postés
- 1767
- Date d'inscription
- lundi 11 décembre 2000
- Statut
- Membre
- Dernière intervention
- 23 décembre 2009
22 oct. 2007 à 21:00
Bsr
Peut être un truc du genre
A adapter évidemment
Peut être un truc du genre
$fp = fopen("Fichier.txt", "r"); //lecture if (!$fp = fopen("Fichier.txt", "r")) { echo "Echec de l'ouverture du fichier"; exit; } else { $modele="Pour la date du "; $date=""; //votre code; while(!feof($fp)) //Tant que l'on n'est pas à la fin du fichier on continue de lire le fichier. { $Ligne = fgets($fp, 255); //on récupère une ligne $pos = strpos($Ligne, $modele); if ($pos === 0) { $date=substr($Ligne,strlen($modele),8); // echo $date; break; } } } fclose($fp); //On ferme le fichier
A adapter évidemment
Ablawa
23 oct. 2007 à 11:56
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
23 oct. 2007 à 11:56
Merci PhP pour ta réponse. Mais chez moi cela ne stocke rien dans la variable $date.
J'aimerais comprendre un peu plus cette partie:
$pos = strpos($Ligne, $modele);
if ($pos === 0)
{
$date=substr($Ligne,strlen($modele),8);
// echo $date;
break;
}
j'ai cherché l'utilisation des fonctions mais ça ne m'a pas permis de comprendre ton code. Merci de m'éclairer davantage.
- La fonction PHP STRLEN() renvoie la longueur de la chaîne de caractères.
- STRPOS($variable,$variable1): revoie le nombre de caractère devant la lettre $variable1. Exemple: STRPOS ("YBET informatique,"i") renvoie le nombre 5. Si le résultat est 0, le caractère n'est pas repris dans la chaîne.
- SUBSTR (chaine, numero_depart [,longueur] ) récupère longueur caractères sans la chaîne à partir du numero de départ.
J'aimerais comprendre un peu plus cette partie:
$pos = strpos($Ligne, $modele);
if ($pos === 0)
{
$date=substr($Ligne,strlen($modele),8);
// echo $date;
break;
}
j'ai cherché l'utilisation des fonctions mais ça ne m'a pas permis de comprendre ton code. Merci de m'éclairer davantage.
- La fonction PHP STRLEN() renvoie la longueur de la chaîne de caractères.
- STRPOS($variable,$variable1): revoie le nombre de caractère devant la lettre $variable1. Exemple: STRPOS ("YBET informatique,"i") renvoie le nombre 5. Si le résultat est 0, le caractère n'est pas repris dans la chaîne.
- SUBSTR (chaine, numero_depart [,longueur] ) récupère longueur caractères sans la chaîne à partir du numero de départ.
pour strpos, c'est pas 0 mais faux ...
Ca revient presque au meme sauf qu'avec les === on differencie les FALSE et 0.
Ca revient presque au meme sauf qu'avec les === on differencie les FALSE et 0.
Ablawa
23 oct. 2007 à 12:23
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
23 oct. 2007 à 12:23
Si je comprends bien "Spidag", ça doit s'écrire comme ceci:
if ($pos ===FALSE)
if ($pos ===FALSE)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ablawa
23 oct. 2007 à 13:10
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
23 oct. 2007 à 13:10
Ci-dessous le code corrigé:
$filename="fichier.txt";
$fp = fopen($filename, "r"); //lecture
if (!$fp = fopen($filename, "r"))
{
echo "Echec de l'ouverture du fichier";
exit;
}
else
{
$modele="Pour la date du";
$date="";
while(!feof($fp)) //Tant que l'on n'est pas à la fin du fichier on continue de lire le fichier.
{
$Ligne = fgets($fp, 255); //on récupère une ligne
$lignedate = strstr($Ligne, $modele);
echo $lignedate; //Et ça m'affiche bien la ligne contenant la date: "Pour la date du 26/05/2006"
//Maintenant reste à récupérer uniquement la date
?????????????????????????????????????
break;
}
}
fclose($fp); //On ferme le fichier
Chers "PHPmen", j'attends impatiemment vos coups de pouce. Merci d'avance.
$filename="fichier.txt";
$fp = fopen($filename, "r"); //lecture
if (!$fp = fopen($filename, "r"))
{
echo "Echec de l'ouverture du fichier";
exit;
}
else
{
$modele="Pour la date du";
$date="";
while(!feof($fp)) //Tant que l'on n'est pas à la fin du fichier on continue de lire le fichier.
{
$Ligne = fgets($fp, 255); //on récupère une ligne
$lignedate = strstr($Ligne, $modele);
echo $lignedate; //Et ça m'affiche bien la ligne contenant la date: "Pour la date du 26/05/2006"
//Maintenant reste à récupérer uniquement la date
?????????????????????????????????????
break;
}
}
fclose($fp); //On ferme le fichier
Chers "PHPmen", j'attends impatiemment vos coups de pouce. Merci d'avance.
Ablawa
23 oct. 2007 à 13:13
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
23 oct. 2007 à 13:13
Est-ce qu'on ne peut pas utiliser les expressions régulières pour récupérer la date sur la ligne: "Pour la date du 26/05/2006"
Ablawa
24 oct. 2007 à 11:31
- Messages postés
- 15
- Date d'inscription
- lundi 23 juillet 2007
- Statut
- Membre
- Dernière intervention
- 24 octobre 2007
24 oct. 2007 à 11:31
chers amis, j'ai finalement utilisé le code de monsieur "PhP", avec quelques retouches. Merci à vous tous.
Voici la solution finale:
<?
$fp = fopen("Fichier.txt", "r"); //lecture
if (!$fp = fopen("Fichier.txt", "r"))
{
echo "Echec de l'ouverture du fichier";
exit;
}
else
{
$modele="Pour la date du ";
$date="";
//votre code;
while(!feof($fp)) //Tant que l'on n'est pas à la fin du fichier on continue de lire le fichier.
{
$Ligne = fgets($fp, 255); //on récupère une ligne
$pos = strstr($Ligne, $modele);
$date=substr($pos,strlen($modele),12);
// echo $date;
break;
}
}
fclose($fp); //On ferme le fichier
?>
Voici la solution finale:
<?
$fp = fopen("Fichier.txt", "r"); //lecture
if (!$fp = fopen("Fichier.txt", "r"))
{
echo "Echec de l'ouverture du fichier";
exit;
}
else
{
$modele="Pour la date du ";
$date="";
//votre code;
while(!feof($fp)) //Tant que l'on n'est pas à la fin du fichier on continue de lire le fichier.
{
$Ligne = fgets($fp, 255); //on récupère une ligne
$pos = strstr($Ligne, $modele);
$date=substr($pos,strlen($modele),12);
// echo $date;
break;
}
}
fclose($fp); //On ferme le fichier
?>