# SoapClient::__soapCall

(PHP 5, PHP 7, PHP 8)

SoapClient::__soapCall — Appelle une fonction SOAP

### Description

public SoapClient::__soapCall(
string `$name`,
array `$args`,
?array `$options` = `null`,
SoapHeader|array|null `$inputHeaders` = `null`,
array `&$outputHeaders` = `null`
): mixed

Ceci est une fonction bas niveau de l'API qui est utilisée pour faire des appels SOAP. Habituellement, en mode WSDL, vous pouvez appeler simplement les fonctions SOAP comme des méthodes SoapClient. Cette méthode est pratique en mode non-WSDL lorsque `soapaction` est inconnu, `uri` est différente de la valeur par défaut ou lors de l'envoi et/ou de la réception d'en-têtes SOAP.

En cas d'erreur, un appel à une fonction SOAP peut causer un lancement d'exception par PHP ou retourner un objet SoapFault si les exceptions sont désactivées. Pour vérifier si l'appel à cette fonction n'arrive pas à attraper les exceptions SoapFault, vérifiez le résultat avec la fonction is_soap_fault().

### Liste de paramètres

`name`

  Le nom de la fonction SOAP à appeler.

`args`

  Un tableau d'arguments à passer à la fonction. Cela peut être un tableau associatif ou ordonné. Notez que la plupart des serveurs SOAP nécessite des noms de paramètres, auquel cas, ce doit être un tableau associatif.

`options`

  Un tableau associatif d'options à passer au client.

  Une option de `location` pour le service Web distant.

  Une option `uri` avec l'espace de noms cible du service SOAP.

  L'option `soapaction` est l'action à appeler.

`inputHeaders`

  Un tableau d'entêtes à envoyer avec la requête SOAP.

`outputHeaders`

  Si fourni, ce tableau sera rempli avec les entêtes de la réponse SOAP retournée.

### Valeurs de retour

Les fonctions SOAP retournent une ou plusieurs valeurs. Si une seule valeur est retournée par la fonction SOAP, la valeur retournée de `__soapCall` sera une valeur simple (e.g. un entier, une chaîne de caractères, etc.). Si plusieurs valeurs sont retournées, `__soapCall` retournera un tableau associatif contenant les noms des paramètres affichés.

En cas d'erreur, si l'objet SoapClient a été construit avec l'option `exceptions` qui valait `false`, un objet SoapFault sera retourné.

### Exemples

Exemple #1 Exemple avec SoapClient::__soapCall()

`<?php
$client = new SoapClient("some.wsdl");
$client->SomeFunction($a, $b, $c);
$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c), NULL,
new SoapHeader(), $output_headers);
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$client->SomeFunction($a, $b, $c);
$client->__soapCall("SomeFunction", array($a, $b, $c));
$client->__soapCall("SomeFunction", array($a, $b, $c),
array('soapaction' => 'some_action',
'uri' => 'some_uri'));
?>`

### Voir aussi

- SoapClient::__construct() - Constructeur SoapClient
- SoapParam::__construct() - Constructeur SoapParam
- SoapVar::__construct() - Constructeur SoapVar
- SoapHeader::__construct() - Constructeur SoapHeader
- SoapFault::__construct() - Constructeur SoapFault
- is_soap_fault() - Vérifie si SOAP retourne une erreur