Manuel PHP
Précédent |  | Suivant

# SoapClient->__construct()

(no version information, might be only in CVS)

SoapClient->__construct() -- Constructeur SoapClient

## Description

class SoapClient {
__construct ( mixed wsdl [, array options] )
}

Ce constructeur crée des objets SoapClient dans le mode `WSDL` ou `non-WSDL`.

## Liste de paramètres

`wsdl`

  URI du fichier `WSDL` ou `NULL` s'il travaille en mode `non-WSDL`.

  > Note : Durant le stage de développement, vous devriez vouloir désactiver le cache WSDL via l'option de configuration `soap.wsdl_cache_ttl` de votre `php.ini`, sinon, les modificiations faites sur le fichier WSDL n'auront aucun effet tant que le cache `soap.wsdl_cache_ttl` n'aura pas expiré.

`options`

  Un tableau d'options. Si l'on travaille en mode WSDL, ce paramètre est optionnel. En mode non-WSDL, vous devez définir les options `location` et `uri`, où `location` est l'URL à interroger et `uri` est l'espace de noms cible du service SOAP.

  Les options `style` et `use` ne fonctionnent que dans le mode non-WSDL. En mode WSDL, ils viennent du fichier WSDL.

  L'option `soap_version` spécifie si l'on doit utiliser le client SOAP version 1.1 ou 1.2.

  Pour les identifications HTTP, vous devez utiliser les options `login` et `password`. Pour effectuer une connexion HTTP via un proxy, utilisez les options `proxy_host`, `proxy_port`, `proxy_login` et `proxy_password`. Pour les identifications à l'aide d'un certificat d'un client HTTPS, utilisez les options `local_cert` et `passphrase`.

  L'option `compression` permet d'utiliser la compression sur les requêtes et les réponses HTTP SOAP.

  L'option `encoding` définit le jeu d'encodage des caractères internes. Cette option ne modifie pas l'encodage des requêtes SOAP (il est toujours utf-8), mais convertit les chaînes en utilisant ce dernier.

  L'option `classmap` peut être utilisée pour lier quelques types WSDL avec des classes PHP. Cette option doit être un tableau avec les types WSDL en tant que clés et les noms des classes PHP en tant que valeurs.

  Définir l'option `trace` active l'utilisation des méthodes SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse et SoapClient->__getLastResponseHeaders.

  L'option `exceptions` est un booléen définissant si les erreurs soap doivent lancer des exceptions du type SoapFault.

  L'option `connection_timeout` définit le délai de connexion en secondes pour la connexion au service SOAP. Cette option ne définit pas un délai de connexion pour les services avec des réponses lentes. Pour limiter la durée d'attente de fin des appels, l'option default_socket_timeout est disponible.

## Exemples

Exemple 1. Exemple avec SoapClient

`<?php
$client = new SoapClient("some.wsdl");
$client = new SoapClient("some.wsdl", array('soap_version' => SOAP_1_2));
$client = new SoapClient("some.wsdl", array('login' => "some_name",
'password' => "some_password"));
$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080));
$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080,
'proxy_login' => "some_name",
'proxy_password' => "some_password"));
$client = new SoapClient("some.wsdl", array('local_cert' => "cert_key.pem"));
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/",
'style' => SOAP_DOCUMENT,
'use' => SOAP_LITERAL));
$client = new SoapClient("some.wsdl",
array('compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP));
$server = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1'));
class MyBook {
public $title;
public $author;
}
$server = new SoapClient("books.wsdl", array('classmap' => array('book' => "MyBook")));
?>`

Précédent | Sommaire | Suivant
SoapClient->__call() | Niveau supérieur | SoapClient->__doRequest()