Как установить расширение soap?

Как установить мыло?

я получил эту ошибку:

фатальная ошибка: класс 'SoapClient' не найден в /home/user/mysite.com/path/to/file.php на линии 16

Я размещаю свой сайт в DreamHost, и они не поддерживают стороннюю установку.

обновление:

Я скопировал php.ini-файл с этим скриптом: http://sxi.sabrextreme.com/dh-phpini

Я использую API с веб-сайта, и он говорит что-то вроде это:

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

и вот список расширений моего php.файла ini:

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

проблема, расширение php_soap.dll там не найден.

6 ответов


Для Windows

1: Найти расширения=php_soap.dll файлы в php.ini и удалите точку с запятой(;)

2: перезагрузите сервер

Для Linux (Ubuntu)

**PHP7.x**

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

для nginx

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

для версии php5

apt-get install php-soap

на ubuntu установить php_soap on PHP7 использовать ниже команды. ссылка

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

для более старой версии php используйте команду ниже и перезапустите apache.

apt-get install php-soap

Dreamhost теперь включает SoapClient в свои сборки PHP 5.3. Вы можете переключить свою версию php в разделе настройки домена панели управления dreamhost.


У меня была та же проблема, не было расширения=php_soap.dll в моем php.Ини Но это было потому, что я скопировал php.ini из старой и предыдущей версии php (не очень хорошая идея). Я нашел dll в каталоге ext, поэтому я просто мог поместить его сам в php.Ини расширение=php_soap.файл DLL После перезапуска Apache все работали с soap:)


Они не поддерживают его, как в они не помогут вам или будут нести ответственность за вас, но вы можете установить пользовательские расширения. Для этого вам нужно сначала настройка локальной установки php 5, во время этого процесса вы можете компилировать необходимые расширения или динамически добавлять их в php.ini после того.


найдите эту строку в php.ini:

;extension=soap

затем удалите точку с запятой ; и перезапустите сервер Apache