|
- Содержание
- Что такое Zend и что такое PHP?
"Расширить PHP" легче сказать, чем сделать. PHP вырос в полноценную
утилиту, состоящую из нескольких мегабайт исходного кода. При
структурировании этой главы мы остановились на реализации подхода "обучения
через выполнение". Это не самый научный и профессиональный подход, но этот
метод более привлекателен и даёт наилучший конечный результат.
В последующих разделах вы быстро научитесь, как сделать так, чтобы самые основные расширения работали почти постоянно.
Затем вы узнаете о продвинутой API-функциональности Zend. Альтернативно
можно было бы попытаться объединить функциональность, дизайн, подсказки,
трюки, и т.п. в единое целое, давая таким образом полный обзор общей картины,
прежде чем делать что-либо практически. Хотя это "лучший" метод, поскольку
никаких неточностей не будет, он требует больших затрат времени и энергии, почему мы и решили использовать прямой подход.
Заметьте, что, хотя в этой главе сделана попытка дать как можно больше
информации о внутренней работе PHP, невозможно дать абсолютно полный
справочник расширения PHP, который обеспечивал бы 100% работоспособность во
всех случаях. Можно разобраться в PHP, при таком сложном и объёмном пакете,
только в том случае, если вы ознакомитесь с ним практически, поэтому мы советуем вам работать с исходным материалом.
Имя Zend это имя машины языка, ядра PHP. Термин PHP это вся система целиком. Это не так уж сложно понять (см.
Рисунок 9.1). Чтобы реализовать интерпретатор Web-скриптов, необходимы три части:
Интерпретатор анализирует входной код, транслирует и выполняет его.
Функциональность реализует функциональность языка (его функции и т.д.).
Интерфейс взаимодействует с Web-сервером и т.д.
Zend полностью выполняет работу части 1 и частично - части 2; PHP выполняет работу частей
2 и 3. Вместе они образуют законченный пакет PHP. Zend формирует только
ядро языка, реализуя PHP в самой основе с помощью некоторых
предопределённых функций. PHP содержит все модули, которые реально создают свойства языка.Рисунок 25-1. Рисунок 9.1. Внутренняя структура PHP.
В последующих разделах обсуждается, где и как можно расширить РНР. | |