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 :

charger des classes interdépendantes [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre éclairé Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    710
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 710
    Par défaut charger des classes interdépendantes
    Bonjour,

    Je rencontre un souci, que j'imagine petit pour les plus aguerris d'entre vous mais qui me pourrit bien la vie.
    J'ai une liste de classes dans un dossier :
    - a.php
    - b.php
    - c.php

    Dans mon index (je suis en MVC), j'ai donc une petite fonction -load- qui permet de faire un require sur les fichiers d'un dossier.

    Le souci est que la classe a dérive de b (class a extends b) et donc quand ma fonction load tente de faire un require de a, j'ai une erreur disant que la classe b n'est pas trouvée !

    J'imagine n'être pas le premier à rencontrer ce souci et je pense qu'il existe une solution de contournement propre (le renommage des fichiers pour avoir un ordre alphabétique n'est pas, à mon sens, une solution propre) mais mes recherches sont pour le moment restées vaines...

    Auriez-vous une idée ? piste ?

    Merci de votre aide !

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    t'es sûr c'est bien PHP 5.0 ? (support de août 2004 à septembre 2005)

    Je t'aurais bien envoyé sur le système d'auto-chargement mais cela nécessite au moins la version >= 5.1.2 ^^

  3. #3
    Membre éclairé Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    710
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 710
    Par défaut
    5.3.3 après vérification...

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Préfixe changé

    Donc soit l'auto-chargement de classe : http://php.net/manual/fr/language.oop5.autoload.php, soit ajouter systématiquement un require_once de la classe parente dans le script de la classe enfant.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre éclairé Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    710
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 710
    Par défaut
    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Charger des classes externes dans un contexte Spring
    Par guymage dans le forum Spring
    Réponses: 2
    Dernier message: 26/04/2013, 00h02
  2. Charger dynamiquement des Classes
    Par Rafoudiablol dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 31/05/2012, 18h24
  3. Réponses: 3
    Dernier message: 11/03/2008, 07h31
  4. Réponses: 7
    Dernier message: 10/12/2007, 08h42
  5. [URLClassLoader] Charger des classes dans le workspace
    Par bitbis dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 29/06/2007, 14h31

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