Новые книги

80 % информации передается с помощью жестов, мимики и интонации. Улавливая их изменения, опытные спикеры управляют вниманием аудитории, а сознательно используя собственную невербалику – создают нужное настроение. Прочитав эту книгу, вы узнаете, что скрывается за словами других, и научитесь осознанно управлять собственной мимикой, интонацией и жестикуляцией, чтобы сделать ярким и убедительным каждое выступление!

Создание get_module

Учебник РНР
НазадГлава 32. Исходные Ресурсы. Обсуждение. Вперёд

Создание get_module()

Это специальная функция для всех динамически загружаемых модулей. Посмотрим сначала на создание через макрос ZEND_GET_MODULE:

#if COMPILE_DL_FIRSTMOD
ZEND_GET_MODULE(firstmod)
#endif

Реализация функции окружена оператором условной компиляции. Это необходимо, поскольку функция get_module() требуется только тогда, когда ваш модуль построен как динамическое расширение. Специфицируя определение COMPILE_DL_FIRSTMOD в команде компилятору (см. ранее обсуждение инструкций компилятора, необходимых для построения динамического расширения), вы можете инструктировать ваш модуль, намереваетесь вы построить его как динамическое расширение или как встроенный модуль. Если вам нужен встроенный модуль, реализация get_module() просто будет не нужна.

get_module() вызывается Zend во время загрузки модуля. Вы можете представлять её как вызываемую с помощью вызова dl() в вашем скрипте. Её назначение в том, чтобы передать блок информации модуля обратно Zend, чтобы информировать машину о содержимом модуля.

Если вы не реализуете функцию get_module() в вашем динамически загружаемом модуле, Zend выдаст вам сообщение об ошибке при попытке доступа к ней.


Назад Оглавление Вперёд
Объявление блока Zend-модуля ВверхРеализация всех импортируемых функций