Documentation
Bibliothèques externes
Table des matières ▼
Présentation
Quand vous développez un site web ou une API, il est fréquent d'utiliser des biliothèques de fonction pour effectuer certains traitements (pour éviter de tout développer soi-même).
Temma est très souple et s'adapte à la manière dont vous voulez charger ces bibliothèques. De manière générale, on considère qu'il est possible de charger les bibliothèques : en les recopiant dans le répertoire lib/, ou en utilisant le gestionnaire de dépendances Composer.
Copier la bibliothèque
Si la bibliothèque se présente comme un ensemble de fichiers .php ou sous la forme d'un fichier .phar, vous pouvez copier le(s) fichier(s) dans le répertoire lib/ du projet.
Fichiers .php
Si vous placez des fichiers .php dans le répertoire lib/, et qu'ils contiennent des objets en respectant la norme PSR-4, ils seront pris en charge automatiquement par l'autoloader de Temma.
Par exemple, l'objet \Skywalker\Luke doit être enregistré dans le fichier lib/Skywalker/Luke.php, et peut être instancié directement :
$luke = new \Skywalker\Luke();
Si par contre les fichiers ne respectent pas la norme PSR-4, vous devrez les inclure explicitement avant de pouvoir utiliser les objets et fonctions qu'ils contiennent.
Par exemple, si le fichier lib/skywalker/famille.php contient l'objet \Skywalker\Luke, il faudra l'inclure avant d'instancier l'objet :
<?php
require_once('skywalker/famille.php');
// suite du code
$luke = new \Skywalker\Luke();
Fichier .phar
Si vous placez un fichier .phar directement dans le répertoire lib/, tous vos objets qui utilisent le contenu de ce fichier devront l'inclure :
<?php
require_once("une_bibliotheque.phar");
Si vous avez placé le fichier .phar dans un sous-répertoire, vous devez inclure tout le chemin en dessous lib/ :
<?php
require_once("chemin/vers/une_bibliotheque.phar");
Utilisation de Composer
Composer est le gestionnaire de dépendance communément utilisé dans les projets PHP. Il permet de charger facilement les bibliothèques qui sont déclarées sur le service Packagist.
En partant du principe que vous avez déjà installé Composer, vous pouvez créer un fichier composer.json à la racine de votre projet, et y lister les bibliothèques qui doivent être installées :
{
"require": {
"lib1": ">=1.0.0",
"lib2": "2.*"
}
}
Ensuite, pour que Composer télécharge les bibliothèques listées (ainsi que leurs éventuelles dépendances), exécutez la commande : composer update
Si vous avez installé Composer sous forme de fichier .phar, vous devrez exécuter la commande php composer.phar update
Composer placera les fichiers téléchargés dans le répertoire vendors/.
Si des bibliothèques ont été installées avec Composer, Temma chargera automatiquement l'autoloader de Composer, et les objets des bibliothèques seront instanciables directement.
Précédent : | Configuration |
Suivant : | Routage |
Table des matières
- Migration : Comment passer de Temma 1.x à la version 2
- Installation : Télécharger Temma et l'installer pour démarrer votre projet Web
- Configuration : Toutes les directives de configuration du fichier etc/temma.json et les variables d'environnement utilisables en option
- Bibliothèques externes : Comment utiliser des bibliothèques de fonctions externes
- Routage : Le système de routage par défaut de Temma, et le routage avancé
- Log : Utilisation du système de log, gestion par niveaux de criticité
- Contrôleurs : Pièces essentiels de votre application Web
- Vues : Templates Smarty ou exports JSON/CSV/RSS/iCal/INI
- Injection de dépendances : La colonne vertébrale de vos développements applicatifs
- Sessions : Extension des sessions utilisateurs gérées par PHP
- Sources de données : Pour gérer l'accès aux données de manière unifiée
- Modèle : Comment utiliser les DAO pour accéder aux bases de données
- Flux d'exécution : Comment gérer le flux d'exécution, entre les plugins et le contrôleur
- Plugins : Comment utiliser les plugins, et écrire les vôtres pour modulariser votre code
- Attributs : Comment filtrer l'accès aux contrôleurs et aux actions
- Tests : Pour écrire des tests d'intégration automatisés.
- Interface en ligne de commande : Pour créer des scripts exécutables en ligne de commande, initialisés automatiquement par Temma
- Helpers : Objets proposés par Temma pour vous aider dans plusieurs circonstances