13.Zend Framework 2 et 3

13.1.Introduction

Zend framework est le framework proposé par Zend ("auteur" du moteur de PHP). Ce framework implémente le modèle MVC et propose toute une palette de fonctions destinées à faciliter les développements. Il peut donc être utilisé soit en tant que simple bibliothèque de fonctions soit en tant que "moteur" MVC.
Nous présentons ici, l'installation de la version 3 (et 2.5+ avec PHP au moins égale à 5.5) de Zend Framework pour cela vous devez disposer d'une version de PHP au moins égale à 5.6 (la version 7 de PHP répond donc à ce critère).
Si vous souhaitez utiliser une version 2 (antérieure à la version 2.5) de Zend Framework nous vous invitons à consulter le chapitre Installation Zend Framework 2.

13.2.Installation

L'installation de Zend Framework se fait via la commande composer[c'est quoi?]. Vous devez donc au préalable disposer de composer[comment?].
Pour installer l'ensemble de la bibliothèque Zend, il faut installer le module zendframework/zendframework. Dans la pratique il est peu probable que vous ayez besoin de l'ensemble c'est pourquoi vous pourrez préférer installer les modules au compte goutte. Pour exemple, la gestion MVC se fait via le module zendframework/zend-mvc, les mails via zendframework/zend-mail et les bases de données via zendframework/zend-db..
Dans l'immédiat ne vous embarrassez pas avec ces considérations: choisissez donc l'espace dans lequel vous souhaitez installer (l'ensemble de) Zend Framework (disons /usr/local/) et lancez la commande /usr/local composer require zendframework/zendframework
rem
  • Si vous souhaitez absolument une version 2 remplacez la commande par /usr/local composer require zendframework/zendframework=2.*
A l'issue de l'installation vous trouverez, dans le répertoire dans lequel vous avez lancé la commande:
  • Le fichier composer.json qui contient simplement la demande que vous avez effectuée en ligne de commande
  • Le fichier composer.lock un simple fichier de protection que l'on peut ignorer
  • Le dossier vendor/ celui qui réceptionne toutes les bibliothèques récupérées via composer
C'est bien évidemment ce dossier qui nous intéresse. C'est là que nous retrouvons un dossier zendframework/ qui contient un ensemble de dossiers préfixés zend- correspondant aux différentes bibliothèques Zend.

13.3.Utilisation en tant que bibliothèque (pour un script PHP)

13.3.1.Introduction

Pour pouvoir utiliser Zend Framework en tant que bibliothèque vous devrez vous assurer que vos scripts sont capables de charger (via include[comment faire un include?]) les classes nécessaires au fonctionnement de Zend. Pour cela, la meilleure méthode consiste à s'appuyer sur un "autoloader". Un fichier qui, une fois inclus dans votre script, automatise le chargement des classes. Si vous avez procédé à une installation via composer vous aurez tout intérêt à vous appuyer sur l'autoloader de composer.

13.3.2.Autoloader composer

Charger l'autoloader consiste simplement à ajouter au début de votre script principal une instruction comme:
<?php
require_once '/chemin/vers/vendor/autoloader.php';
// A partir de là, vous pouvez utiliser les classes ZF sans avoir recours à include
?>
Et c'est tout!
rem
  • Pensez à adapter /chemin/vers/ à votre environnement pour pointer vers le dossier vendor/ que vous avez créé via composer
  • On aura tout intérêt à ajouter /chemin/vers/ à l'include_path[c'est quoi?] et remplacer dans le script la ligne require_once par require_once 'vendor/autoloader.php' (ou require_once 'autoloader.php' en mettant '/chemin/vers/vendor/' dans l'include_path) afin de rendre le script indépendant du chemin d'installation