CXV. Fonctions SOAP

Introduction

L'extension SOAP sert à écrire des serveurs et clients SOAP. Elle supporte une partie des spécifications de SOAP 1.1, SOAP 1.2 et WSDL 1.1.

Pré-requis

Cette extension nécessite la bibliothèque GNOME xml. Téléchargez et installez cette bibliothèque. Vous devez avoir au moins la version libxml-2.5.4.

Installation

Cette extension est uniquement disponible si PHP a été configuré avec --enable-soap.

Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.

Tableau 1. Options de configuration

NomPar défautModifiable
soap.wsdl_cache_enabled"1"PHP_INI_ALL
soap.wsdl_cache_dir"/tmp"PHP_INI_ALL
soap.wsdl_cache_ttl86400PHP_INI_ALL
Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Voici un éclaircissement sur l'utilisation des directives de configuration.

soap.wsdl_cache_enabled boolean

Active ou désactive le cache WSDL.

soap.wsdl_cache_dir string

Spécifie le nom du dossier où SOAP place les fichiers mis en cache.

soap.wsdl_cache_ttl int

Nombre de seconde de conservation (time to live) des fichiers dans le système de cache.

Classes pré-définies

SoapClient

Constructeur

Méthodes

SoapFault

Constructeur

SoapHeader

SoapHeader est une classe de bas niveau pour passer et retourner des en-têtes SOAP. C'est juste un gestionnaire de données et il n'a pas de méthodes spéciales excpeté son constructeur. Elle peut être utilisé dans la méthode SoapClient->__soapCall() pour passer un en-tête SOAP ou dans un gestionnaire d'en-têtes SOAP pour retourner l'en-tête dans une réponse SOAP.

Constructeur

SoapParam

SoapParam est une classe bas niveau pour nommer les paramètres et retourner les valeurs dans le mode non-WSDL. C'est juste un gestionnaire de données et il n'a pas de méthodes spéciales excepté son constructeur.

Constructeur

SoapServer

Constructeur

Méthodes

SoapVar

SoapVar est une classe bas niveau pour encoder les paramètres et retourner les valeurs dans le mode non-WSDL. C'est juste un gestionnaire de données et n'a pas de méthodes spaciales excepté le constructeur. C'est particulièrement utile lorsque vous voulez définir la propriété type dans une requête ou une réponse SOAP.

Constructeur

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

SOAP_1_1 (entier)

SOAP_1_2 (entier)

SOAP_PERSISTENCE_SESSION (entier)

SOAP_PERSISTENCE_REQUEST (entier)

SOAP_FUNCTIONS_ALL (entier)

SOAP_ENCODED (entier)

SOAP_LITERAL (entier)

SOAP_RPC (entier)

SOAP_DOCUMENT (entier)

SOAP_ACTOR_NEXT (entier)

SOAP_ACTOR_NONE (entier)

SOAP_ACTOR_UNLIMATERECEIVER (entier)

SOAP_COMPRESSION_ACCEPT (entier)

SOAP_COMPRESSION_GZIP (entier)

SOAP_COMPRESSION_DEFLATE (entier)

UNKNOWN_TYPE (entier)

XSD_STRING (entier)

XSD_BOOLEAN (entier)

XSD_DECIMAL (entier)

XSD_FLOAT (entier)

XSD_DOUBLE (entier)

XSD_DURATION (entier)

XSD_DATETIME (entier)

XSD_TIME (entier)

XSD_DATE (entier)

XSD_GYEARMONTH (entier)

integer XSD_GYEAR (entier)

XSD_GMONTHDAY (entier)

XSD_GDAY (entier)

XSD_GMONTH (entier)

XSD_HEXBINARY (entier)

XSD_BASE64BINARY (entier)

XSD_ANYURI (entier)

XSD_QNAME (entier)

XSD_NOTATION (entier)

XSD_NORMALIZEDSTRING (entier)

XSD_TOKEN (entier)

XSD_LANGUAGE (entier)

XSD_NMTOKEN (entier)

XSD_NAME (entier)

XSD_NCNAME (entier)

XSD_ID (entier)

XSD_IDREF (entier)

XSD_IDREFS (entier)

XSD_ENTITY (entier)

XSD_ENTITIES (entier)

XSD_INTEGER (entier)

XSD_NONPOSITIVEINTEGER (entier)

XSD_NEGATIVEINTEGER (entier)

XSD_LONG (entier)

XSD_INT (entier)

XSD_SHORT (entier)

XSD_BYTE (entier)

XSD_NONNEGATIVEINTEGER (entier)

XSD_UNSIGNEDLONG (entier)

XSD_UNSIGNEDINT (entier)

XSD_UNSIGNEDSHORT (entier)

XSD_UNSIGNEDBYTE (entier)

XSD_POSITIVEINTEGER (entier)

XSD_NMTOKENS (entier)

XSD_ANYTYPE (entier)

SOAP_ENC_OBJECT (entier)

SOAP_ENC_ARRAY (entier)

XSD_1999_TIMEINSTANT (entier)

XSD_NAMESPACE (chaîne de caractères)

XSD_1999_NAMESPACE (chaîne de caractères)

Table des matières
is_soap_fault --  Vérifie si l'API soap a échoué
SoapClient->__call() --  Appelle une fonction SOAP (dépréciée)
SoapClient->__construct() --  Constructeur SoapClient
SoapClient->__doRequest() --  Effectue une requête SOAP
SoapClient->__getFunctions() --  Retourne une liste de fonctions SOAP
SoapClient->__getLastRequest() --  Retourne la dernière requête SOAP
SoapClient->__getLastRequestHeaders() --  Retourne les en-têtes de la dernière requête SOAP
SoapClient->__getLastResponse() --  Retourne la dernière réponse SOAP
SoapClient->__getLastResponseHeaders() --  Retourne les en-têtes de la dernière réponse SOAP
SoapClient->__getTypes() --  Retourne une liste des types SOAP
SoapClient->__setCookie() --  Définie le cookie qui sera envoyé avec la requête SOAP
SoapClient->__soapCall() --  Appel une fonction SOAP
SoapFault->__construct() --  Constructeur SoapFault
SoapHeader->__construct() --  Constructeur SoapHeader
SoapParam->__construct() --  Constructeur SoapParam
SoapServer->addFunction() --  Ajoute une ou plusieurs fonctions qui vont gérer les requêtes SOAP
SoapServer->__construct() --  Constructeur SoapServer
SoapServer->fault() -- 
SoapServer->getFunctions() --  Retourne la liste des fonctions définies
SoapServer->handle() --  Gère une requête SOAP
SoapServer->setClass() --  Définie la classe qui gère les requêtes SOAP
SoapServer->setPersistence() --  Définie le mode persistent de SoapServer
SoapVar->__construct() --  Constructeur SoapVar
use_soap_error_handler() --