Saya mencoba contoh layanan web yang sederhana dan saya mendapatkan kesalahan ini meskipun saya membatalkan komentar extension=php_soap.dll
dalam php.ini
file:
Kesalahan fatal: Kelas 'SoapClient' tidak ditemukan di C: \ Program Files (x86) \ EasyPHP-5.3.9 \ www \ server.php on line 2
php
soap
fatal-error
Figen Güngör
sumber
sumber
Jawaban:
Mendiagnosis
Cari yang berikut di dalam file skrip Anda
Jika Anda tidak dapat
Soap Client
mengaturnyaenabled
seperti itu:Memperbaiki
Lakukan hal berikut:
php.ini
di folder apache bin Anda, YaituApache/bin/php.ini
;
dari awalextension=php_soap.dll
phpinfo();
lagi dan periksa apakah Anda melihat gambar yang sama dengan yang di atasDi sisi lain jika ini tidak menyelesaikan masalah Anda, Anda mungkin ingin memeriksa persyaratan untuk SOAP di sini . Juga di bagian komentar Anda dapat menemukan saran bagus tentang menghubungkan ke https.
sumber
;extension=php_openssl.dll
jika WSDL yang ingin Anda jangkau berada di bawah protokol httpsextension=soap
melakukan trik.SoapClient
kelasnya masih belum ditemukan. Saya melihatnya diaktifkan di phpinfo (), ekstensi diaktifkan, openssl diaktifkan juga, semuanya ok tapi kelas tidak ditemukan. Saya menggunakan Wampserver 3.0 dan PHP 5.6 dan saya me-restart Apache tetapi tidak menyelesaikan masalah. Tolong bantu.Untuk menginstal SOAP di PHP-7 jalankan yang berikut di terminal Ubuntu Anda:
Untuk menginstal SOAP di PHP-7.1 jalankan sebagai berikut di terminal Ubuntu Anda:
Untuk menginstal SOAP di PHP-7.2 jalankan sebagai berikut di terminal Ubuntu Anda:
Untuk menginstal SOAP di PHP-7.3 jalankan sebagai berikut di terminal Ubuntu Anda:
sumber
sudo apt-get install php-soap
sudo apt-get install php7.2-soap
Untuk AWS (RHEL):
(56 di sini adalah versi 5.6 PHP - letakkan versi Anda di sini).
sumber
sudo yum install php56w-soap
! Saya lupa w, dan ini menginstal, dan masih tidak berhasil. Butuh beberapa saat untuk memikirkan hal ini tetapi sekarang berhasil.Untuk menginstal SOAP di PHP5.6, jalankan perintah berikut di terminal Ubuntu 14.04 Anda:
Lihat apakah SOAP diaktifkan:
(Anda harus melihat SOAP di antara teks yang dikembalikan.)
sumber
Saya harus lari
sebagai root dan restart apache.
Itu berhasil! Sekarang panggilan phpinfo () saya menunjukkan bagian SOAP.
sumber
reboot
harus disebutkan bahwa apache-nya reboot, bukan server reboot.Aku couln't menemukan yang
SOAP
bagian diphpinfo()
jadi saya harus menginstalnya.Sebagai informasi,
SOAP
ekstensi membutuhkanlibxml
ekstensi PHP. Ini berarti bahwa lewat--enable-libxml
juga diperlukan sesuai dengan http://php.net/manual/en/soap.requirements.phpDari panel WHM
Instal SOAP 0.13.0
PERINGATAN: "pir / HTTP_Request" tidak digunakan lagi karena "pear / HTTP_Request2"
instal ok: channel: //pear.php.net/SOAP-0.13.0
Pasang HTTP_Request2 (opsional)
instal ok: channel: //pear.php.net/HTTP_Request2
Mulai Ulang Layanan »HTTP Server (Apache)
Dari perintah shell
1.pear instal SABUN
2. boot ulang
sumber
Saya memecahkan masalah ini di PHP 7.0.22-0ubuntu0.16.04.1 nginx
sumber
Untuk Docker * tambahkan baris ini:
*: Untuk gambar berbasis debian, mis. tidak akan bekerja untuk varian alpine.
sumber
Untuk pengguna XAMPP , buka
php.ini
file yang terletak diC:/xampp/php
dan hapus;
dari awalextension=soap
. Kemudian restart Apache dan hanya itu!sumber
Anda harus mewarisi
nusoap.php
kelas dan memasukkannya ke direktori proyek Anda, Anda dapat mengunduhnya dari Internet .Gunakan kode ini:
sumber
Pada Centos 7.8 dan PHP 7.3
sumber