Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/12/2006, 23h53   #1
Invité de passage
 
Inscription : octobre 2006
Messages : 5
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : octobre 2006
Messages : 5
Points : 3
Points : 3
Par défaut Récuperer 4 ligne d'un fichier

Allo,,

Je voudrai récuperer 4 ligne d'un fichier,

ex ; ligne 80, ligne 102, ligne 154, ligne 242

Je voudrai afficher la varible et pouvoir la modifier.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
$fichier = "C:/EasyPHP1-8/apache/conf/httpd.conf";
 
if (!file_exists($fichier)) {
echo "Échec, le fichier n'existe pas.";
}
 
else {
$lignes = file($fichier);  // place le fichier dans un tableau
$nb = count($lignes);    // compte le nombre de ligne
echo $nb, "<br>";   // Affiche le résultat
}
 
 
foreach ($lignes as $line_num => $line) {
if ($line_num >= 102 and $line_num <= 103){
echo $line;}
}
?>
De cette façon je peut récuperer la ligne 102 mais pas l'ecrire dans une table,

Code :
<td width="80"><? echo $line; ?></td>
Ça fonctionne pas et puid si je veux récuperer plusieurs lignes les afficher et les modifier il faudrai des variable séparé pour chaque lignes.
Desmon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2006, 09h29   #2
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
Oui il faut des variables séparées pur chaque ligne et pour cela rien de plus simple....

Tu charges ton fichier et tu colles son contenu dans une variable. Ensuite tu le découpe (split) ligne par ligne et tu a ta ligne dans une variable.
Cela donnerais en gros :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$fichier = "C:/EasyPHP1-8/apache/conf/httpd.conf";
 
if (!file_exists($fichier)) {
echo "Échec, le fichier n'existe pas.";
}
else {
$lignes = file($fichier);  // place le fichier dans un tableau
}
 
$allmylines = split("\r?\n", $lignes);
//affichage de la ligne 43
echo $allmylines[43];
@+
cadou
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2006, 10h18   #3
Membre confirmé
 
Inscription : janvier 2004
Messages : 242
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 242
Points : 245
Points : 245
Citation:
Envoyé par cadoudal56
Oui il faut des variables séparées pur chaque ligne et pour cela rien de plus simple....

Tu charges ton fichier et tu colles son contenu dans une variable. Ensuite tu le découpe (split) ligne par ligne et tu a ta ligne dans une variable.
Cela donnerais en gros :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$fichier = "C:/EasyPHP1-8/apache/conf/httpd.conf";
 
if (!file_exists($fichier)) {
echo "Échec, le fichier n'existe pas.";
}
else {
$lignes = file($fichier);  // place le fichier dans un tableau
}
 
$allmylines = split("\r?\n", $lignes);
//affichage de la ligne 43
echo $allmylines[43];
@+
cadou
file renvoit deja un tableau de ligne, le split ne doit pas etre super utile non ?
chaced est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2006, 10h38   #4
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
Si file renvoi déja un tableau de lignes, je ne vois pas bien ou se trouve ton probleme...
tu peux appeller ta ligne comme ceci :
$lignes[42];

@+
cadou
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2006, 19h57   #5
Invité de passage
 
Inscription : octobre 2006
Messages : 5
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : octobre 2006
Messages : 5
Points : 3
Points : 3
Par défaut Trop évident comment j'ai pu passer a coté...

$lignes[42];

J'avais déjà testé et ça m'avait donné genre le 42 caractères de la première ligne, mais après un 2e test ça fonctionne nikel.

Code :
1
2
3
4
5
6
7
8
9
10
$fichier = "C:/EasyPHP1-8/apache/conf/httpd.conf";
 
if (!file_exists($fichier)) {
echo "Échec, le fichier n'existe pas.";
}
 
else {
$lignes = file($fichier);
echo $lignes[102];
}
Donne comme résultat « Timeout 300 ».

Première étape. ok merci.

Deuxième modifier la valeur 300.
Je regarde sa se soir et si jamais j'ai besoin d'aide, je sais ou trouver un bon forum d'aide sur le PHP.

Voici ma 4e versions.

Desmon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h21.


 
 
 
 
Partenaires

Hébergement Web