Я пытаюсь простой пример веб-службы, и я получаю эту ошибку, даже если я раскомментировал extension=php_soap.dll
в php.ini
файле:
Неустранимая ошибка: класс «SoapClient» не найден в C: \ Program Files (x86) \ EasyPHP-5.3.9 \ www \ server.php в строке 2
php
soap
fatal-error
Figen Güngör
источник
источник
Ответы:
диагностики
Посмотрите следующее внутри вашего скрипта
Если вы не можете найти
Soap Client
значение,enabled
подобное:Fix
Сделайте следующее:
php.ini
в своей папке apache bin, т.е.Apache/bin/php.ini
;
из началаextension=php_soap.dll
phpinfo();
снова и проверьте, видите ли вы изображение, похожее на изображение вышеС другой стороны, если это не решит вашу проблему, вы можете проверить требования для SOAP здесь . Также в разделе комментариев вы можете найти полезные советы по подключению к https.
источник
;extension=php_openssl.dll
если WSDL, который вы пытаетесь достичь, находится по протоколу httpsextension=soap
.SoapClient
класс до сих пор не найден. Я вижу, что он включен в phpinfo (), расширение включено, openssl тоже включен, все в порядке, но класс не найден. Я использую Wampserver 3.0 и PHP 5.6 и перезапустил Apache, но не решил проблему. Пожалуйста помоги.Чтобы установить SOAP в PHP-7, выполните в своем терминале Ubuntu следующее:
Чтобы установить SOAP в PHP-7.1, выполните в своем терминале Ubuntu следующее:
Чтобы установить SOAP в PHP-7.2, выполните в своем терминале Ubuntu следующее:
Чтобы установить SOAP в PHP-7.3, выполните в своем терминале Ubuntu следующее:
источник
sudo apt-get install php-soap
sudo apt-get install php7.2-soap
Для AWS (RHEL):
(56 здесь - 5.6 версия PHP - поместите свою версию здесь).
источник
sudo yum install php56w-soap
! Я забыл w, и это устанавливает, и все же это не сработало. Потребовалось время, чтобы понять это, но теперь это работает.Чтобы установить SOAP в PHP5.6, выполните в своем терминале Ubuntu 14.04 следующее:
Посмотрите, было ли включено SOAP:
(Вы должны увидеть SOAP между возвращенным текстом.)
источник
Я должен был бежать
как root и перезапустите apache.
Это сработало! Теперь мой вызов phpinfo () показывает раздел SOAP.
источник
reboot
Следует отметить, что его перезагрузка apache, а не перезагрузка сервера.Я couln't найти в
SOAP
разделphpinfo()
, так что я должен был установить его.Для информации
SOAP
расширение требуетlibxml
расширения PHP. Это означает, что передача--enable-libxml
также требуется в соответствии с http://php.net/manual/en/soap.requirements.phpС панели WHM
Установите SOAP 0.13.0
ВНИМАНИЕ: «pear / HTTP_Request» не рекомендуется в пользу «pear / HTTP_Request2»
установить нормально: канал: //pear.php.net/SOAP-0.13.0
Установить HTTP_Request2 (необязательно)
установить нормально: канал: //pear.php.net/HTTP_Request2
Перезапустите Сервисы »HTTP Сервер (Apache)
Из командной оболочки
1.pear установить SOAP
2.reboot
источник
Я решил эту проблему на PHP 7.0.22-0ubuntu0.16.04.1 nginx
источник
Для Docker * добавьте эту строку:
*: Для изображений на основе Debian, т.е. не будет работать для альпийских вариантов.
источник
Для пользователей XAMPP откройте
php.ini
файл, расположенный в,C:/xampp/php
и удалите его;
с началаextension=soap
. Затем перезапустите Apache и все!источник
Вы должны унаследовать
nusoap.php
класс и поместить его в каталог вашего проекта, вы можете скачать его из Интернета .Используйте этот код:
источник
На Centos 7.8 и PHP 7.3
источник