[RESOLU] Fichier txt - ajout données avant dernière ligne

Eléphanteau du PHP | 11 Messages

08 avr. 2023, 17:23

J'ai un fichier txt dans lequel il y a des données enregistrées comme ceci (date température1 température2):

07-04-2023 5 -3
08-04-2023 5 -2

Je voudrais ajouter ces données à l'avant dernière ligne: 3.5 -1.6
Ce qui donnerait:

07-04-2023 5 -3 3.5 -1.6
08-04-2023 5 -3

Bref! C'est un script qui écrit la date du jour avec des données météo et ce script doit ajouter au jour précédent le max et le min de la température.

Merci d'avance!

Mammouth du PHP | 2703 Messages

08 avr. 2023, 21:49

https://www.php.net/manual/fr/function.file.php pour récupérer le contenu du fichier dans un tableau, ensuite, manipuler ce tableau et sauver avec https://www.php.net/manual/fr/function. ... ntents.php

Avatar du membre
Mammouth du PHP | 1564 Messages

08 avr. 2023, 23:26

Mettre à jour en même temps d'insérer la dernière ligne, si possible.

Eléphanteau du PHP | 11 Messages

10 avr. 2023, 21:46

Mon problème n'est pas tout a fait résolu. Je peux récupérer les données du fichier txt.
Contenu du fichier normales.txt:
06-04-2023 1 -2
07-04-2023 3 -2
08-04-2023 4 -2
09-04-2023 5 -2
10-04-2023 5 -2

Script php:
$txt_file = "normales.txt;
$lines = file($txt_file);
foreach ($lines as $num=>$line)
{
 echo 'Ligne '.$num.': '.$line.'<br/>';
}
Dans le résultat du script, les 2 premières lignes du fichier txt s'affichent sur la même ligne.

Résultat du script:
Ligne 0: 06-04-2023 1 -2 07-04-2023 3 -2
Ligne 1: 08-04-2023 4 -2
Ligne 2: 09-04-2023 5 -2
Ligne 3: 10-04-2023 5 -2

Avatar du membre
Mammouth du PHP | 1564 Messages

10 avr. 2023, 22:29

Si tu veux juste afficher, fais un implode en y ajoutant un <br> entre chaque ligne du tableau :
$txt = file("fichier.txt");
echo implode("<br>", $txt);
Si ta toujours le même souci, regarde le code source de ton fichier txt pour t'assurer qu'il ya bien un saut de ligne à la première ligne.

Eléphanteau du PHP | 11 Messages

12 avr. 2023, 14:52

Si tu veux juste afficher, fais un implode en y ajoutant un <br> entre chaque ligne du tableau :
$txt = file("fichier.txt");
echo implode("<br>", $txt);
Si ta toujours le même souci, regarde le code source de ton fichier txt pour t'assurer qu'il ya bien un saut de ligne à la première ligne.
Merci pour l'aide. C'est apprécié!!!

C'est résolu.