Ответ 1
Ваша версия PHP не была скомпилирована с модулем openssl
. Если вы строите исходный код, добавьте модуль следующим образом:
cd /path/to/php-5.4/
./configure --with-openssl
Я получаю это исключение при попытке выполнить мои модульные тесты PHP:
Неустранимая ошибка: вызов функции undefined openssl_random_pseudo_bytes()
Что это значит?
Ваша версия PHP не была скомпилирована с модулем openssl
. Если вы строите исходный код, добавьте модуль следующим образом:
cd /path/to/php-5.4/
./configure --with-openssl
У меня была такая же проблема. Я решил это, отредактировав файл php.ini, изменив ;extension=php_openssl.dll
на extension=php_openssl.dll
.
(Для моей установки мой php.ini файл находился в моем каталоге P:\Program Files\EasyPHP-12.1\conf_files\
.)
Это означает, что у вас, возможно, нет openssl.
Если вы находитесь в окнах, его еще проще загрузить. Включите его из значка Wamp на панели задач.
Это означает, что вы не имеете расширение openssl, включенное в вашу установку PHP. Он должен быть включен для вас, чтобы использовать функции openssl_ *.
В вашей php-установке либо не включена функция openssl, либо вы можете запустить версию php < 5.3.
Чтобы включить openssl, вы должны повторно скомпилировать и установить php с флагом "-with-openssl". См. документация по установке php
Проверьте вашу конфигурацию php.ini:
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
;extension_dir = "./"
; On windows:
extension_dir = "ext"
extension=php_openssl.dll