[PHP] Ne pas lire la 1ère et dernière ligne

Fermé
HD - 20 déc. 2006 à 14:15
 HD - 21 déc. 2006 à 14:07
Bonjour
je lis un fichier php avec un code classique :
if (file_exists($fichier))
    {
	$fp = fopen("$fichier", "r"); 
    }
      
    while (!feof($fp))
    { 
       $ligne = fgets($fp,4096); 
       $liste = explode( ";",$ligne);       
       /* On assigne les variables */

Sauf que je ne veux pas lire la première et la dernière ligne de ce fichier.
Merci donc de m'indiquer comment procéder pour celà
merci d'avance pour votre aide !
A voir également:

4 réponses

Ssylvainsab Messages postés 2884 Date d'inscription samedi 29 juillet 2006 Statut Modérateur Dernière intervention 15 août 2020 825
20 déc. 2006 à 18:29
Je ne sais pas du tout si ca marche, mais tu peux essayer d'effacer les premières et dernières lignes du fichier :
$fichier=preg_replace('#^[^\n]*\n(.*)\n[^\n]*$#sU','$1',$fichier);
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
20 déc. 2006 à 18:30
Bonjour,

Essaie le code suivant, pour voir :
if (file_exists($fichier))
{
    $fp = fopen("$fichier", "r"); 
}
$premiereLigne = true;
while (!feof($fp))
{ 
    $ligne = fgets($fp,4096); 
    if (!$premiereLigne && !feof($fp))  // Si ce n'est pas la 1ere ligne ni la dernière
    {
        $liste = explode( ";",$ligne);
        /* On assigne les variables */
    }
    else  //Sinon, on indique qu'on a franchi la première ligne
        $premiereLigne=false;
}
0
salut
ce code marche bien, merci ! c'est juste qu'il ne récupère pas les lignes dans l'ordre du fichier d'origine :-?
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011 > HD
21 déc. 2006 à 10:25
Comment ça, pas dans l'ordre du fichier d'origine ??
0
lefou4 Messages postés 73 Date d'inscription jeudi 21 décembre 2006 Statut Membre Dernière intervention 5 mai 2010 44
21 déc. 2006 à 11:26
Apparemment chaque ligne de ton fichier texte est stockée dans un tableau. Pourquoi ne pas lire toutes les lignes du fichier texte puis ensuite supprimer les premier et dernier éléments du tableau ?
0
c'est plutôt un fichier CSV (comme excel niveau forme) et quand je récupère ces lignes ( de 1 à 7 par exemple) j'ai dans l'ordre la ligne 5,4,3,6,2.
ce qui fait que j ai pas la 1 et la 7 (tant mieux) mais les autres ne sont pas dans l'ordre :-?
merci a tous
0