Fatal error: Class 'SoapClient' ne trouve pas
Je suis en train d'essayer un service web simple exemple, et je reçois ce message d'erreur même si j'ai décommenté extension=php_soap.dll
dans le php.ini
fichier:
Erreur fatale: de la Classe de SoapClient' ne trouve pas dans C:\Program Files (x86)\EasyPHP-5.3.9\www\server.php sur la ligne 2
- Êtes-vous sûr que vous l'avez édité Apache/bin/php.ini et de redémarrer apache après??
- Je vous remercie. Apperantly, j'ai changé un autre php.fichier ini. J'ai trouvé dans le fichier Apache.
- sudo apt-get install php7.0 pour ceux d'entre vous qui ne l'avez pas installé encore
Vous devez vous connecter pour publier un commentaire.
Diagnostiquer
Rechercher le suivant à l'intérieur de votre fichier de script
Si vous ne pouvez pas trouver
Soap Client
ensemble deenabled
comme suit:Fixer
Procédez de la manière suivante:
php.ini
dans votre apache bin, I. eApache/bin/php.ini
;
depuis le début deextension=php_soap.dll
phpinfo();
de nouveau et de vérifier si vous voyez une image similaire à celui ci-dessusD'autre part, si cela ne résout pas votre problème, vous voudrez peut-être vérifier la exigences pour le SAVON ici. Également dans le commentaire de l'article, vous pouvez trouver de bons conseils sur la connexion https.
;extension=php_openssl.dll
si le WSDL que vous essayez d'atteindre est sous protocole httpsextension=soap
faire l'affaire.SoapClient
classe n'est toujours pas trouvé. Je vois qu'il est activé dans le phpinfo(), l'extension est activée, openssl est activé en trop, tout est ok, mais la classe n'est pas trouvé. J'utilise Wampserver 3.0 et PHP 5.6 et j'ai redémarré Apache, mais ne résout pas le problème. S'il vous plaît aider.extension=php_soap.dll
dans mon fichier. Je viens d'ajouter cette ligne de texte et cela a fonctionné.Pour installer SOAP en PHP-7 exécuter les opérations suivantes dans votre terminal Ubuntu:
Pour installer SOAP en PHP-7.1 exécution suivantes dans votre terminal Ubuntu:
Pour installer SOAP en PHP-7.2 exécution suivantes dans votre terminal Ubuntu:
Pour installer SOAP en PHP-7.3 exécuter les opérations suivantes dans votre terminal Ubuntu:
sudo apt-get install php-soap
sudo apt-get install php7.2-soap
extension=soap
dans votre php.fichier ini (suppression de la;
)sudo apt-get install php-soap
php-soap
est le générique nom du package Debian, qui mappe automatiquement à l'installation de la version de PHP (au moins celui par défaut)Pour les SSFE (RHEL):
(56 ici est la version de PHP 5.6 - mettez votre version ici).
sudo yum install php56w-soap
! J'ai oublié le w, et ceci installe, et encore ça ne fonctionne pas. Il a fallu un certain temps pour comprendre cela, mais maintenant il fonctionne.Pour installer SAVON en PHP5.6 exécutez suivant dans votre Ubuntu 14.04 terminal:
Voir si le SAVON a été activé:
(Vous devriez voir de SAVON entre le texte retourné.)
J'ai dû courir
en tant que root et redémarrer apache.
Qui a fonctionné! Maintenant, mon phpinfo() qui affiche le SAVON section.
reboot
doit être mentionné que sa apache redémarrage, pas de redémarrer le serveur.J'ai résolu ce problème sur PHP 7.0.22-0ubuntu0.16.04.1 nginx
Je couln pas trouver la
SOAP
section dansphpinfo()
donc j'ai dû l'installer.Pour information, le
SOAP
extension nécessite lelibxml
extension PHP. Cela signifie que le passage en--enable-libxml
est également nécessaire selon http://php.net/manual/en/soap.requirements.phpDe WHM panneau
Installer SAVON 0.13.0
AVERTISSEMENT: "poire/HTTP_Request" est dépréciée en faveur de "poire/HTTP_Request2"
install ok: channel://pear.php.net/SOAP-0.13.0
Installer HTTP_Request2 (facultatif)
install ok: channel://pear.php.net/HTTP_Request2
Redémarrer les Services » un Serveur HTTP (Apache)
De commande shell
1.poire installer SAVON
2.redémarrage
Pour Docker* ajouter cette ligne:
*: Pour debian basé sur des images, c'est à dire. ne fonctionne pas pour le ski alpin variantes.
Vous devez hériter
nusoap.php
classe et la mettre dans votre répertoire de projet, vous pouvez le télécharger à partir du Internet.Utiliser ce code: