RSS

   
1. Введение
2. Инсталяция
3. Конфигурирование
4. Безопасность
5. Базовый синтаксис
6. Типы
7. Переменные
8. Константы
9. Выражения
10. Операции
11. Структуры управления
12. Функции
13. Классы и Объекты
14. Ссылки. Разъяснение.
15. Обработка Ошибок
16. Создание изображений и манипуляции с ними
17. HTTP-аутентификация в PHP
18. Куки
19. Обработка загрузки файлов
20. Использование удалённых файлов
21. Обслуживание соединений
22. Постоянные соединения с базами данных
23. Безопасный режим
24. Использование PHP из командной строки
Консультация юриста
Ваш регион:
Ваше имя:

Ваш телефон

  (можно сотовый)

Ваш вопрос (можно кратко)


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

dl

(PHP 3, PHP 4)

dl - загружает РНР-расширение на этапе прогона.

Описание

bool dl (string library)

Загружает расширение PHP, заданное параметром library. Параметр library это только имя загружаемого файла расширения, которое также зависит от используемой платформы. Например, расширение sockets (если скомпилировано как shared-модуль, не по умолчанию!) может называться sockets.so на unix-платформах и php_sockets.dll - на платформах windows.

Возвращает TRUE при успехе, FALSE при неудаче . Если функциональность загружаемых модулей недоступна (см. Примечания) или отключена (через отключение enable_dl или включением safe_mode в php.ini), возникает E_ERROR, и выполнение останавливается. Если dl() терпит неудачу из-за того, что специфицированная библиотека не может быть загружена, в дополнение к FALSE выдаётся сообщение E_WARNING.

Используйте extension_loaded() для проверки доступности расширения. Это работает и с встроенными, и с динамическими расширениями (через php.ini или dl()).

Пример:
if (!extension_loaded('gd')) {
    if (!dl('gd.so')) {
        exit;
    }
}

Директория, из которой расширение загружается, зависит от вашей платформы:

Windows - если в php.ini не установлено явно, расширение по умолчанию загружается из c:\php4\extensions\.

Unix - если в php.ini не установлено явно, директория по умолчанию расширения зависит от:

  • того, построен ли PHP с опцией --enable-debug, или нет

  • того, построен ли PHP с (экспериментальной) ZTS (Zend Thread Safety) поддержкой, или нет

  • текущего внутреннего ZEND_MODULE_API_NO (номера API внутреннего модуля Zend, который в основе представляет собой дату изменения главного модуля API, например, 20010901)

Учитывая всё вышесказанное, по умолчанию директория будет <php-install-directory>/lib/php/extension/<debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO, например, /usr/local/php/lib/php/extensions/debug-non-zts-20010901 или /usr/local/php/lib/php/extensions/no-debug-zts-20010901.

Примечание: dl()не поддерживается в многопоточных Web-серверах. Используйте в таком окружении оператор extensions в файле php.ini. Однако на построения как CGI и CLIэто не влияет!

Примечание: dl() чувствительна к регистру на unix-платформах.

См. также Директивы загрузки расширений и extension_loaded().


Назад Оглавление Вперёд
assert Вверх extension_loaded

po gonn © 2005 "JULI'S BEEHIVE"