Raccourcis : Contenu - rubriques - sous rubriques
EN FR
Recherche Rapide Recherche avancée
 
Page

  [Ouvert] Comment accéder aux class d'un composant

Posté par SlyB le 16/12/2022 16:13

Bonjour,

Je découvre avec intérêt Jelix (1.7) mais me heurte à un problème. Dans l'arborescence de l'application que je reprends, j'ai dans le dossier vendor le composant phpoffice. Comment faire appel ou bien charger ce composant depuis un contrôleur ? ou bien comment créer une réponse de type xlsx ? Merci d'avance aux experts qui voudront bien se pencher sur ma question.

Cordialement

  [Ouvert] Re: Comment accéder aux class d'un composant

Réponse #1 Postée par SlyB le 19/12/2022 13:44

Je me répond à moi-même,

Une solution qui fonctionne sans forcément être la plus propre est par exemple pour phpoffice d'ajouter avant la class du controller les lignes suivantes :

require(jApp::appPath('vendor/autoload.php')); use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

En espérant que cela puisse aider quelqu'un d'autre ;)

  [Ouvert] Comment accéder aux class d'un composant

Réponse #2 Postée par laurentj le 20/12/2022 15:09

Bonjour,

Tout ce qui est stocké dans vendor de l'application, et automatiquement chargeable depuis n'importe quel contrôleur. Il ne faut pas faire soit-même un require(jApp::appPath('vendor/autoload.php')); , c'est déjà fait dans le application.init.php.

Faire des use et/ou des new suffit à charger les classes voulues.

  [Ouvert] Re: Comment accéder aux class d'un composant

Réponse #3 Postée par SlyB le 03/01/2023 16:07

Bonjour,

Je confirme que le use est suffisant ;). Merci !

 
Page
  1. traitements en ligne de commande - "Unknown module" >
  2. [Résolu] Migration 1.1.6 > 1.2b1 => Module inconnu dans le sélecteur >
  3. Comment accéder aux class d'un composant