Estoy probando un ejemplo simple de servicio web y obtengo este error aunque no haya comentado extension=php_soap.dll
en el php.ini
archivo:
Error fatal: la clase 'SoapClient' no se encuentra en C: \ Archivos de programa (x86) \ EasyPHP-5.3.9 \ www \ server.php en la línea 2
php
soap
fatal-error
Figen Güngör
fuente
fuente
Respuestas:
Diagnosticar
Busque lo siguiente dentro de su archivo de script
Si no puede encontrar el
Soap Client
conjunto que leenabled
guste, así:Reparar
Haz lo siguiente:
php.ini
en su carpeta de apache bin, es decirApache/bin/php.ini
;
desde el principio deextension=php_soap.dll
phpinfo();
nuevamente y verifique si ve una imagen similar a la de arribaPor otro lado, si esto no resuelve su problema, puede consultar los requisitos para SOAP aquí . También en la sección de comentarios puede encontrar buenos consejos sobre cómo conectarse a https.
fuente
;extension=php_openssl.dll
si el WSDL que estás tratando de alcanzar está bajo el protocolo httpsextension=soap
hago el truco.SoapClient
clase aún no se encuentra. Lo veo habilitado en phpinfo (), la extensión está habilitada, openssl también está habilitado, todo está bien pero no se encuentra la clase. Uso Wampserver 3.0 y PHP 5.6 y reinicié Apache, pero no resuelve el problema. Por favor ayuda.Para instalar SOAP en PHP-7, ejecute lo siguiente en su terminal Ubuntu:
Para instalar SOAP en PHP-7.1, ejecute lo siguiente en su terminal Ubuntu:
Para instalar SOAP en PHP-7.2, ejecute lo siguiente en su terminal Ubuntu:
Para instalar SOAP en PHP-7.3, ejecute lo siguiente en su terminal Ubuntu:
fuente
sudo apt-get install php-soap
sudo apt-get install php7.2-soap
Para AWS (RHEL):
(56 aquí es la versión 5.6 de PHP - ponga su versión aquí).
fuente
sudo yum install php56w-soap
! Olvidé la w, y esto se instala, y aún así no funcionó. Me tomó un tiempo resolver esto, pero ahora funciona.Para instalar SOAP en PHP5.6 ejecute lo siguiente en su terminal Ubuntu 14.04:
Ver si SOAP estaba habilitado:
(Debería ver SOAP entre el texto devuelto).
fuente
Tuve que correr
como root y reiniciar apache.
¡Eso funciono! Ahora mi llamada phpinfo () muestra la sección SOAP.
fuente
reboot
Cabe mencionar que su reinicio de Apache, no el reinicio del servidor.No pude encontrar la
SOAP
sección,phpinfo()
así que tuve que instalarla.Para información, la
SOAP
extensión requiere lalibxml
extensión PHP. Esto significa que--enable-libxml
también se requiere pasar de acuerdo con http://php.net/manual/en/soap.requirements.phpDesde el panel WHM
Instalar SOAP 0.13.0
ADVERTENCIA: "pear / HTTP_Request" está en desuso a favor de "pear / HTTP_Request2"
instalar ok: canal: //pear.php.net/SOAP-0.13.0
Instalar HTTP_Request2 (opcional)
instalar ok: canal: //pear.php.net/HTTP_Request2
Reiniciar servicios »Servidor HTTP (Apache)
Desde el comando de shell
1.pear instalar SOAP
2.reboot
fuente
Resolví este problema en PHP 7.0.22-0ubuntu0.16.04.1 nginx
fuente
Para Docker * agregue esta línea:
*: Para imágenes basadas en Debian, es decir. no funcionará para variantes alpinas.
fuente
Para usuarios de XAMPP , abra el
php.ini
archivo ubicado enC:/xampp/php
y elimine el;
desde el principio deextension=soap
. Luego reinicia Apache y listo.fuente
Debe heredar la
nusoap.php
clase y ponerla en el directorio de su proyecto, puede descargarla de Internet .Usa este código:
fuente
En Centos 7.8 y PHP 7.3
fuente