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

Symfony PHP Discussion :

Instancier une classe personnelle dans controlleur


Sujet :

Symfony PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 25
    Points : 22
    Points
    22
    Par défaut Instancier une classe personnelle dans controlleur
    Bonjour,

    Je commence à m'intéresser au framework Symfony 2 et j'ai une première question à la laquelle je n'arrive pas à trouver de réponse.

    J'ai créé un "bundle" sous "src/MonAppli/HomeBundle".

    J'ai déposé sous "src/MonAppli/lib/maClasse/maClasse.php" une classe spécifique à mon application possédant un espace de nom "MonAppli/maClasse" et que j'aimerai instancier dans mon controlleur "HomeBundle".

    Dans le fichier "src/MonAppli/HomeBundle/Controller/HomeController.php" j'aimerai pouvoir instancier mon objet "maClasse"

    J'ai essayer en faisant un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    use MonAppli/maClasse;
    $monObjet = new maClasse();
    Et j'ai alors le message d'erreur :
    Fatal error: Class 'MonAppli/maClasse' not found in C:\wamp\www\.....\HomeBundle\Controller\HomeController.php on line 24
    Est-ce un problème d'organisation des fichiers, d'enregistrement de mon espace de nom, d'enregistrement de ma classe auprès de Symfony ?

    Par avance je vous remercie pour votre aide

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    src/MonAppli/lib/maClasse/maClasse.php
    le dossier lib est au même niveau que les bundles alors qu'il devrait être dans l'un de tes bundles.

    Soit il est lié fonctionnellement a ton bundle, ducoup tu le met dedans
    exemple: src/MonAppli/HomeBundle/lib/maClasse/maClasse.php

    Soit il est lié au projet et tu crées un bundle sous MonAppli
    exemple src/MonAppli/loginManagementBundle/lib/maClasse/maClasse.php

    Soit c'est une classe perso que tu peux utiliser potentiellement dans tous tes devs et dans ce cas la c'est séparé de l'appli
    exemple src/MesFichiersDevs/DevBundle/lib/etc...

    après pour use il faut mettre le chemin casi complet genre MonAppli/HomeBundle/lib/maClasse/maClasse;

    Je crois que le fonctionnement par bundle est obligatoire

Discussions similaires

  1. Réponses: 22
    Dernier message: 20/09/2013, 16h08
  2. Instancier une classe crée dans une autre application
    Par Yvan49 dans le forum VBA Access
    Réponses: 2
    Dernier message: 28/02/2009, 19h29
  3. Utiliser une classe personnelle dans un vector
    Par Mindiell dans le forum SL & STL
    Réponses: 16
    Dernier message: 01/03/2007, 17h42
  4. Réponses: 1
    Dernier message: 10/01/2007, 14h15
  5. Réponses: 4
    Dernier message: 08/03/2006, 19h07

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