SommaireTelecharger la documentationChapitre suivantChapitre precedent  

  .: News :.: Edito :.: Scripts :.: Forum :.: Erreurs :.: Jobs :. 
 
Sommaire

Améliorer PHP 4.0

Préface
Présentation
Capacités d'extensions
Disposition du code source
Le système de compilation automatique de PHP
Créer une extension
Utiliser une extension
Résolution de problèmes
Présentation des sources
Gestion des arguments
Créer des variables
Afficher des informations
Valeurs retournées

7.4 Disposition du code source

Note

Avant de passer au reste du chapitre, vous devez obtenir une version propre et non altérée des sources de votre serveur web préféré. Nous travaillons avec Apache (disponible à l'adresse http://www.apache.org/) et, bien sur, avec (disponible à l'adresse http://www.php.net/ - avions nous vraiment besoin de le préciser?).

Assurez vous que vous pouvez compiler PHP avec un environnement par vous-même! Nous ne traiterons pas ces problèmes ici, car nous supposerons que vous avez déjà cette connaissance de base pour étudier ce chapitre.

Avant que nous ne commençions a traiter des questions de codes, vous devez vous familiariser avec l'arborescence du code source, pour naviguer rapidement dans les dossiers. C'est une faculté à développer absolument pour implémenter des extensions, et les débugger.

Après avoir extrait l'archive PHP, vous allez découvrir la disposition du code, similaire a celle de <>.

Dossier principal de la distribution PHP

La table suivante décrit le contenu des dossiers principaux :

> >
Dossier Contenu
php-4 Fichiers sources PHP principaux, code et entêtes. Ici, vous trouverez toutes les définitions des API de PHP, les macros, etc... (important).
ext Dépot de tous les modules dynamiques et internes; par défaut, ce sont les modules officiels PHP, qui ont été intégrés dans la distribution principale. En PHP 4.0, il est possible de compiler des extensions standards comme modules dynamiquement chargeable (au moins, ceux qui le supporte).
pear Dossier contenant les classes de PHP. Au moment de l'écriture de ce chapitre, il est toujours en phase de design. Le but est de fournir des fonctionnalités proches de celle du CPAN de Perl, dans ce dossier.
sapi Contient le code des différentes couches d'abstraction de serveur web.
TSRM Dossier du "Thread Safe Resource Manager" (TSRM) de Zend et PHP.
Zend Dossier des fichiers Zend; ici, vous trouverez les définitions des API de Zend, les macros...(important).

Détailler tous ces fichiers inclus dans ces dossiers dépasse le cadre de ce chapitre. Cependant, il est bon de regarder plus attentivement les fichiers suivants :

  • php.h , situé dans le dossier PHP principal. Ce fichier contient la plus part des macros et définitions d'API de PHP.

  • zend.h , situé dans le dossier Zend. Ce fichier contient la plus part des macros et définitions d'API de Zend.

  • zend_API.h , aussi situé dans le dossier Zend. Il définit les API de Zend.

Nous vous conseillons aussi d'ouvrir quelques dossiers à l'intérieur de ces dossiers; par exemple, ceux qui sont liés à l'exécuteur Zend, les fichiers d'initialisation de PHP, etc... Après avoir lur ces fichiers, prenez le temps de naviguer dans le package, pour repérer les dépendances des fichiers et modules. Comment ils sont reliés les uns aux autres, et comment ils s'utilisent réciproquement. Cela vous aidera a adapter votre style de codage à celui qui est utilisé par les auteurs de PHP. Pour augmenter les capacités de PHP, vous devrez rapidement vous adapter à ce style.


Chapitre précédentChapitre suivantAccueil nexen.net