Maison > développement back-end > tutoriel php > Comment effectuer des appels SOAP à l'aide de la classe SoapClient de PHP ?

Comment effectuer des appels SOAP à l'aide de la classe SoapClient de PHP ?

Barbara Streisand
Libérer: 2024-12-24 06:16:14
original
598 Les gens l'ont consulté

How to Make SOAP Calls Using PHP's SoapClient Class?

Création d'appels SOAP avec la classe SoapClient de PHP

Lorsque vous travaillez avec des services SOAP en tant que client, structurer l'appel SOAP approprié peut être difficile. Utiliser la classe SoapClient de PHP pour effectuer de tels appels peut être intimidant, en particulier pour ceux qui sont moins familiers avec le codage orienté objet.

Prenons l'exemple d'une fonction SOAP appelée "FirstFunction" qui attend un objet "Contact" comme un de ses paramètres. L'objet Contact possède les propriétés « id » et « name ». De plus, cela nécessite une description et un montant.

Création de l'objet SoapClient

Commencez par référencer le fichier WSDL pour établir un objet SoapClient :

$client = new SoapClient("http://example.com/webservices?wsdl");
Copier après la connexion

Structurer les paramètres

Pour créer le Objet "Contact", utilisez le code suivant :

$contact = new Contact(100, "John");
Copier après la connexion

Ensuite, définissez les paramètres restants :

$description = "Barrel of Oil";
$amount = 500;
Copier après la connexion

Combinez ces paramètres dans un tableau :

$params = array(
  "Contact" => $contact,
  "description" => $description,
  "amount" => $amount
);
Copier après la connexion

Invocation de l'appel SOAP

Enfin, invoquez l'appel SOAP à l'aide du Méthode __soapCall de SoapClient :

$response = $client->__soapCall("FirstFunction", array($params));
Copier après la connexion

Ce code complet devrait exécuter avec succès l'appel SOAP souhaité :

id = $id;
        $this->name = $name;
    }
}

$client = new SoapClient("http://example.com/webservices?wsdl");

$contact = new Contact(100, "John");
$description = "Barrel of Oil";
$amount = 500;

$params = array(
  "Contact" => $contact,
  "description" => $description,
  "amount" => $amount
);

$response = $client->__soapCall("FirstFunction", array($params));

var_dump($response);

?>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal