Raccourcis : Contenu - rubriques - sous rubriques
EN FR

Table des matières

Le plugin zendframework est un plugin pour le coordinateur. Il permet d'inclure la classe Zend_Loader du Zend Framework afin de pouvoir l'utiliser dans votre code Jelix pour appeler les librairies du Zend Framework.

Déclaration du plugin

Pour activer le plugin zendframework, indiquez-le avec son fichier de configuration dans la section [coordplugins] du fichier de configuration de votre application :


[coordplugins]
zendframework = zendframework.coord.ini.php

Copier le fichier de configuration zendframework.coord.ini.php dans le répertoire de var/config/ de votre application, depuis lib/jelix/plugins/coord/zendframework/zendframework.coord.ini.php.dist.

Éditez ensuite le fichier zendframework.coord.ini.php et remplissez la variable zendLibPath pour indiquer le chemin vers le Zend Framework sur votre serveur.

Utiliser le plugin

Bien que le plugin zendframework soit activé dans votre application, le Zend Framework n'est pas chargé. En effet il est inutile de l'inclure à chaque action alors que vous n'allez avoir besoin d'utiliser certaines de ses librairies que dans peu d'actions.

Il faut donc explicitement déclarer que vous voulez utiliser les bibliothèques du Zend Framework dans des actions pour lesquelles vous en avez besoin.

Cela se fait en utilisant la variable de classe $pluginParams du controller.

Exemple pour l'action index :


public $pluginParams = array(
        'index' => array('zf.active'=>true)
);

Vous pouvez donc ensuite utiliser les bibliothèques du Zend Framework dans votre action index, exemple avec Zend_Pdf :


function index() {
    $rep = $this->getResponse('binary');

    Zend_Loader::loadClass('Zend_Pdf');
    $pdf = new Zend_Pdf();
    $pdf->pages = ($page = $pdf->newPage('A4'));
    $font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
    $page->setFont($font, 32);
    $page->drawText('Zend Framework with Jelix !', 120, 500);        
       
    $rep->content = $pdf->render();
    $rep->outputFileName = 'fooo.pdf';
    $rep->mimeType = 'application/pdf';

    return $rep;
}