¿Cómo instalo la extensión soap?


¿Cómo instalo Soap?

Tengo este error:

Error fatal: La clase 'SoapClient' no se encuentra en /home/user/mysite.com/path/to/file.php en la línea 16

Estoy alojando mi sitio en DreamHost y no admiten ninguna instalación de terceros.

ACTUALIZACIÓN:

Copié el php.archivo ini con este script: http://sxi.sabrextreme.com/dh-phpini

Estoy usando una API de un sitio web y dice algo como esto:

#######################################################################
## You need to enable the following extensions in your PHP.ini file  ##
## php_openssl.dll          ##
## php_soap.dll             ##
#######################################################################

Y aquí están la lista de extensiones mi php.el archivo ini tiene:

extension=php_bz2.dll
;extension=php_cpdf.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_dbx.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_java.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_mssql.dll
;extension=php_msql.dll
;extension=php_mysql.dll
;extension=php_oci8.dll
**extension=php_openssl.dll**
;extension=php_oracle.dll
;extension=php_pdf.dll
;extension=php_pgsql.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_sockets.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_w32api.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_yaz.dll
;extension=php_zip.dll

El problema es la extensión php_soap.dll no se encuentra allí.

Author: Community, 2010-03-24

6 answers

Para Windows

1: Buscar extensión=php_soap.dll en php.ini y eliminar el punto y coma (;)

2: Reinicie su servidor

Para Linux (Ubuntu)

* * PHP7.x * *

sudo apt-get install php7.0-soap 
sudo systemctl restart apache2

Para nginx

sudo apt-get install php7.0-soap
sudo systemctl restart nginx

Para PHP5

apt-get install php-soap
 59
Author: M Arfan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-07-06 05:39:48

En ubuntu para instalar php_soap en PHP7 utilice los siguientes comandos. Referencia

sudo apt-get install php7.0-soap
sudo systemctl restart apache2.service

Para versiones anteriores de php use el siguiente comando y reinicie apache.

apt-get install php-soap
 44
Author: TIGER,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-22 10:53:08

Dreamhost ahora incluye SoapClient en sus compilaciones PHP 5.3. Puede cambiar su versión de php en la sección configuración de dominio del panel de control de dreamhost.

 1
Author: rosswil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-03 08:29:31

Tuve el mismo problema, no había ninguna extensión=php_soap.dll en mi php.ini Pero esto fue porque había copiado el php.ini de una versión antigua y anterior de php (no es una buena idea). Encontré el dll en el directorio ext así que pude ponerlo yo mismo en el php.ini extension = php_soap.DLL Después de reiniciar Apache todo funcionó con soap:)

 1
Author: franc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-01 18:00:38

No lo soportan, ya que no te ayudarán ni serán responsables de que te manoseen nada, pero puedes instalar extensiones personalizadas. Para ello necesitas primero configurar una instalación local de php 5, durante ese proceso puedes compilar en extensiones que necesites o puedes añadirlas dinámicamente al php.ini después del hecho.

 0
Author: prodigitalson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-03-24 16:18:39

Encuentra esta línea en php.ini:

;extension=soap

Luego elimine el punto y coma ; y reinicie el servidor Apache

 0
Author: Gouda Elalfy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-07 11:24:48