Новые книги

Если вы регулярно работаете на компьютере, то у вас время от времени обязательно будут возникать различные проблемы. Причем проблемы эти, как правило, абсолютно разного уровня сложности – от неудачной установки кодеков при прослушивании музыки на компьютере до неполадок при создании локальной сети. Возникает вопрос: а как же их решать, ведь все о персональном компьютере и операционной системе знать попросту невозможно? Именно для этого и предназначена книга, которую вы сейчас держите в руках. В ней вы найдете 500 советов, решений различных проблем и ответов на всевозможные вопросы. С этой книгой все проблемы, возникающие перед вами при работе на ПК, будут решены!

Возможность Расширения

Учебник РНР
Назад Вперёд

Глава 26. Возможность расширения

Содержание
Внешние модули
Встроенные модули
Zend-машина

Как показано на Рисунке 9.1 ранее, PHP может быть расширен прежде всего за счёт трёх позиций: внешних модулей, встроенных модулей и Zend-машиной. В следующих разделах мы рассмотрим эти опции.

Внешние модули

Внешние модули можно загружать в ходе работы скрипта через использование функции dl(). Эта функция загружает совместно используемый/shared объект с диска и делает его функциональность доступной скрипту, с которым она связывается. После завершения работы скрипта внешний модуль выгружается из памяти. Этот метод имеет как преимущества, так и недостатки, как показано в таблице:

Преимущества Недостатки
Внешние модули не требуют перекомпиляции PHP. Совместно используемые объекты должны загружаться всякий раз при выполнении скрипта (при каждом его запуске), что очень медленно.
Размер PHP остаётся небольшим за счёт вынесения вовне определённой функциональности. Внешние файлы занимают дисковое пространство.
 Каждый скрипт, который хочет использовать функциональность внешнего модуля, должен специально включать вызов dl(), либо тэг extension в php.ini должен быть изменён (что не всегда является подходящим решением).

Суммируя сказанное: внешние модули подходят для создания продуктов сторонних производителей, небольших редко используемых дополнений к PHP или для целей тестирования. При быстрой разработке внешней функциональности внешние модули дают наилучшие результаты. При частом использовании, больших реализациях и сложном коде недостатки перевешивают достоинства.

Можно использовать тэг extension в php.ini для создания дополнительных внешних модулей для PHP. Эти внешние модули полностью отделены от основного пакета, что очень удобно при разработке коммерческих приложений. Коммерческие дистрибьюторы могут распространять диски или архивы, содержащие только их дополнительные модули без необходимости создавать фиксированные и объёмные исполняемые файлы PHP, не позволяющие подключать другие модули.


НазадОглавление Вперёд
ОбзорВверх Встроенные модули