IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment connaître le nombre de fichiers ouverts par un script PHP ?


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 67
    Points : 83
    Points
    83
    Par défaut Comment connaître le nombre de fichiers ouverts par un script PHP ?
    Bonjour,

    J'utilise actuellement FPDF pour générer automatiquement d'énormes fichiers PDF. (> 5000 pages)

    Or à partir d'un certain nombre de pages, le script PHP m'affiche l'erreur suivante dès qu'il veut lire ou écrire dans un fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    failed to open stream: Too many open files in /home/(...)/script.php
    Etant donné qu'on utilise un grands nombre d'objets, je suis à la recherche d'un moyen pour connaître de manière globale le nombre de fichiers actuellement ouverts par un script PHP afin de déterminer à quel endroit du code le bât blesse.

    Y a-t-il un moyen à votre avis.

    Merci d'avance pour votre réponse.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    regarde le nombre de fopen et le nombre de fclose

  3. #3
    Expert éminent
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 146
    Points : 9 386
    Points
    9 386
    Par défaut
    A mon avis cela vient surtout du fait que tu ouvres des fichiers à la chaîne et ne les ferme qu'à la fin du script...
    Ne peux-tu pas les ouvrir, récupérer leur contenu ou ce qui t'intéresse puis le fermer avant de t'attaquer à un autre ?

    « Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur. »
    « Le watchdog aboie, les tests passent »

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par transgohan Voir le message
    A mon avis cela vient surtout du fait que tu ouvres des fichiers à la chaîne et ne les ferme qu'à la fin du script...
    oui donc fopen et fclose

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 67
    Points : 83
    Points
    83
    Par défaut
    Merci pour vos réponses.

    Effectivement, je ne l'ai pas dit dans mon post initial mais j'ai effectivement déjà recherché des fopen sans fclose dans mon code et dans le code de FPDF. Je n'en ai pas trouvé.

    En plus des fopen et des fclose, l'ensemble du code utilise file_get_contents, file_put_contents et simplexml_load_file. Je me suis en fait demandé si l'une ou l'autre de ces fonctions ne fermait pas correctement le fichier qu'ils ouvraient.

    C'est pour cela qu'une fonction "nb de fichiers ouverts par le script PHP" m'aurait aidé pour valider ou invalider cette hypothèse.

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/04/2014, 11h36
  2. Réponses: 0
    Dernier message: 15/03/2009, 12h52
  3. Réponses: 8
    Dernier message: 10/05/2008, 19h10
  4. Réponses: 2
    Dernier message: 11/08/2007, 03h51
  5. [C#] Comment connaître le nombre de lignes affectées par un Select ?
    Par diaboloche dans le forum Accès aux données
    Réponses: 6
    Dernier message: 21/09/2006, 13h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo