2013-05-23 21 views
5

Sto integrando un gateway di pagamento utilizzando SOAP. Quando sto chiamando la funzione di servizio usando Wamp funziona bene. Ma sul mio server di vivere che sta dando folloing degli errori Class 'SoapClient' non trovatoClasse "SoapClient" non trovata

il codice che sto usando è

<?php 
try 
{ 
$soap_client=new SoapClient("WebServiceLink/service.asmx?WSDL"); 

$quote=$soap_client->PGI_TRANS("PassedParameter"); 
    echo $quote->PGI_TRANSResult; 
} 
catch(SoapFault $exception) 
{ 
    echo $exception->getmessage(); 
} 
?> 
+3

possibile duplicato di [Errore irreversibile: Classe 'SoapClient' non trovato] (http://stackoverflow.com/questions/11391442/fatal-error-class-soapclient-not-found) –

risposta

7

abilitare l'estensione sapone in php. apri php.ini trova la riga "php_soap" e decommenta questa riga, riavvia server web, problema risolto.

0

È necessario ereditare la classe nusoap.php e inserirla nella directory del progetto, è possibile scaricarla da Internet.

Download Link: http://sourceforge.net/projects/nusoap/

di questo codice:

require_once ('nusoap.php');

4

Non è necessario modificare php.ini per abilitare il sapone nelle distribuzioni moderne. Se non è abilitato, il pacchetto probabilmente non è installato. Una volta installato il pacchetto corretto, la tua distribuzione dovrebbe abilitare le impostazioni php.ini corrette per te.

Su Ubuntu:

sudo apt-get install php-soap 

installerà e abilitare le estensioni di sapone per voi.

0

Per Ubuntu17.10 Artful Ho usato il seguente comando per visualizzare il nome esatto del pacchetto (può essere diverso).

>> apt-cache search php | grep -i soap 
libnusoap-php - SOAP toolkit for PHP 
php7.1-soap - SOAP module for PHP 
python-pysimplesoap - simple and lightweight SOAP Library (Python 2) 
python3-pysimplesoap - simple and lightweight SOAP Library (Python 3) 
php-soap - SOAP module for PHP [default] 
php5.6-soap - SOAP module for PHP 
php7.0-soap - SOAP module for PHP 
php7.2-soap - SOAP module for PHP 

Ecco come ottengo il nome. Quindi basta installarlo.

sudo apt-get install php5.6-soap 

P.S. Non dimenticare di aggiornare il repository sudo apt-get install php-soap