 |
|
Sommaire
Capacités d'extensions
Module externes
Modules internes
Les extensions au Zend Engine
|
7.3.1 Module externes
Les modules externes pveut être chargés au moment de l'exécution du
script, en utilisant la fonction dl. Cette fonction
charge un objet partagé (shared object) et rend toutes ses fonctionnalités
accessibles aux scripts auquel il est attaché. Une fois l'exécution du
script terminé, le module externe est déchargé de la mémoire. Cette méthode
a ses avantages et inconvénients, comme le montre cette table :
>
>
Avantages |
Inconvénients |
Les évolutions de modules externes ne requièrent pas recompilation de
PHP.
|
Les objets partagés doivent être chargés à chaque exécution de
script, c'est à dire pour chaque visiteur. Cela ralentit le script.
|
La taille de PHP reste petite, en externalisant une partie des
fonctionnalités.
|
Des fichiers externes parsèment le disque.
|
|
Chaque script qui souhaite utiliser une fonctionnalité de module
externe doit l'inclure spécifiquement, avec la fonction
dl, ou une balise extension.
Le fichier de configuration php.ini
doit être
modifié (ce qui n'est pas toujours une solution.
|
Pour résumer, les modules externes sont
excellents pour les produits tierce-parties, les petites
librairies supplémentaires, qui sont rarement utilisées,
ou lors des tests. Pour développer de nouvelles extensions
rapidement, les modules externes fournissent de meilleurs
résultats. Pour les usages répétitifs, les implémentations
importantes ou les codes complexes, cela devient inconvénient
majeur.
Les auteurs d'extensions peuvent étudier la balise
extension du php.ini
pour créer des extensions externes à PHP. Ces modules son
complétement détachés de la distribution principale, ce qui est
particulièrement pratique pour les environnements commerciaux.
Les distributeurs peuvent simplement distribuer des disques ou
des archives contenant uniquement leur librairies, sans avoir
à créer des exécutables PHP fixe et statiques, qui ne permettent
pas d'ajouter des modules supplémentaires.
|
|
 |
 |