Moteur Zend - Zend Engine
Auteur(s) original(aux) | Andi Gutmans , Zeev Suraski |
---|---|
Développeur(s) | Zend Technologies , L'équipe de développement PHP |
Première version | 1999 |
Version stable | 3.4 (PHP 7.4) 4.0 (PHP 8.0) |
Dépôt | github |
Écrit en | C |
Taper | Moteur de script |
Licence | Licence Zend Engine (certaines parties sont sous licence PHP ) |
Site Internet | www |
Le Zend Engine est un compilateur et un environnement d'exécution pour le langage de script PHP et se compose de la machine virtuelle Zend, qui est composée du compilateur Zend et de l'exécuteur Zend, qui compile et exécute le code PHP. Il a été développé à l'origine par Andi Gutmans et Zeev Suraski alors qu'ils étaient étudiants au Technion - Israel Institute of Technology . Ils ont ensuite fondé une société appelée Zend Technologies à Ramat Gan , en Israël . Le nom Zend est une combinaison de leurs prénoms, Zeev et Andi.
La première version du Zend Engine est apparue en 1999 dans la version 4 de PHP. Elle a été écrite en C comme un back-end modulaire hautement optimisé, qui pour la première fois pouvait être utilisé dans des applications en dehors de PHP. Le Zend Engine fournit la gestion de la mémoire et des ressources, ainsi que d'autres services standard pour le langage PHP. Ses performances, sa fiabilité et son extensibilité ont joué un rôle important dans la popularité croissante de PHP.
Cela a été suivi par Zend Engine 2 au cœur de PHP 5.
La version la plus récente est Zend Engine 3 , initialement nommée phpng , qui a été développée pour PHP 7 et améliore considérablement les performances.
Le code source de Zend Engine est disponible gratuitement sous la licence Zend Engine (bien que certaines parties soient sous la licence PHP ) depuis 2001, dans le cadre des versions officielles de php.net, ainsi que du référentiel officiel git ou du GitHub miroir. Divers bénévoles contribuent à la base de code PHP/Zend Engine.
Architecture
Zend Engine est utilisé en interne par PHP en tant que compilateur et moteur d'exécution. Les scripts PHP sont chargés en mémoire et compilés dans les opcodes Zend . Ces opcodes sont exécutés et le code HTML généré est envoyé au client.
Pour implémenter un interpréteur de script Web, vous avez besoin de trois parties :
- La partie interpréteur analyse le code d'entrée, le traduit et l'exécute.
- La partie fonctionnalité implémente la fonctionnalité du langage (ses fonctions, etc.).
- La partie interface communique avec le serveur Web, etc.
Zend prend complètement la partie 1 et un peu la partie 2; PHP prend les parties 2 et 3.
Zend lui-même ne forme vraiment que le noyau du langage, implémentant PHP à la base avec quelques fonctions prédéfinies.
Voir également
Les références
Liens externes
- Site officiel
- "Conception du moteur Zend 2.0" (PDF) . Archivé de l'original (PDF) le 13 août 2011.
- Dépôt git officiel
- "Documentation du moteur Zend" . Wiki de développement PHP . 22 septembre 2017.