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 :

Charger une classe externe


Sujet :

Symfony PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 11
    Points : 14
    Points
    14
    Par défaut Charger une classe externe
    Bonjour à tous,

    Mon probléme est simple, j'utilise un bundle qui utilise html2pdf, et qui fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $this->html2pdf = new \HTML2PDF($mode, $format, $lang,$unicode,$encoding,$margin);
    Donc, je dois déclarer la classe et son namespace avant de faire cela.
    Trés bien, je peux faire tout bétement juste avant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once(dirname(__FILE__).'/../../../../../web/html2pdf/html2pdf.class.php');
    Ce que l'on ne doit pas faire pour un bundle etc..

    J'ai donc essayé de voir comment on chargeait une classe externe sur symfony, et j'ai essayé de mettre ça dans l'autoload:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $loader->registerNamespaces(array(   
    'Symfony'          => array(__DIR__.'/../vendor/symfony/src', __DIR__.'/../vendor/bundles'),
        'Sensio'           => __DIR__.'/../vendor/bundles',
     
     
        'HTML2PDF' => __DIR__.'/../web/html2pdf',
    Mais sans succés, il ne trouve pas la classe à charger.

    Où est ce que j'ai faux ?
    Merci de votre aide

  2. #2
    Membre habitué Avatar de Soobook
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2005
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Réunion

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2005
    Messages : 98
    Points : 149
    Points
    149
    Par défaut
    Bon, je dis peut être de la merde, auquel cas qu'on hésite pas à me reprendre.

    Tu ne dois pas toucher à l'autoload, c'est composer qui gère ça. Si la librairie que tu souhaite n'est pas disponible via composer, tu la place hors de vendors (dans ton bundle, par exemple) puis tu crées un service permettant de l’appeler de partout.
    Si cette librairie n'a pas de namespace, il faut en créer un. Tu peux t'inspirer de ce tuto pour ça, même s'il est dédié à sf 2.0

    Ca n'a rien à voir, mais j'ai fais il y a presque deux ans une appli sf2 avec un module PDF construit sur Html2PDF.
    C'est assez poussé : génération de documents très nombreux et très variés, avec un système de modèles et de création par lots, saisies interactives...
    Même si ça fonctionne, je ne suis pas satisfait du tout : c'est compliqué à mettre en oeuvre et il est vraiment difficile d'obtenir un résultat satisfaisant.

    Pour la v2 que je suis en train de développer, je fais machine arrière. Plutôt que de me galérer à essayer de produire des PDF à partir du HTML, autant les construire directement.
    Je ne suis pas encore sur ce module, mais à priori je vais utiliser le composant PDF de Zend. Je l'ai déjà un peu utilisé et c'est vraiment pas mal.

    Loin de moi l'idée de dénigrer HTML2PDF : j'ai fais pas mal de recherche sur ce sujet et c'est la seule librairie PHP fonctionnelle pour créer du PDF à partir de HTML.
    Cependant ça ne convient à mon avis qu'à des choses très simples, et dés que tes PDF contiennent des tableaux, des images, etc...

    Voila, c'est juste mon avis...
    Javascript est la pornstar des langages de programmation : souple, puissant, tu lui fais faire ce que tu veux, et ça peut finir bien crade.
    ---
    https://www.bgaze.fr

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/02/2007, 17h54
  2. Réponses: 14
    Dernier message: 10/02/2007, 13h27
  3. [ClassLoader] Charger une classe extérieure au projet dynamiquement
    Par tiboudchou dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 17/01/2007, 14h19
  4. [applet][Debutante] Appel a une classe externe
    Par Skydoll dans le forum Applets
    Réponses: 3
    Dernier message: 30/01/2006, 10h31
  5. [EJB][JONAS] EJB utilisant une classe "externe"
    Par Gregory3000 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 13/12/2004, 19h57

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