(PHP 5, PHP 7, PHP 8)
SoapServer::__construct — Constructor de SoapServer
Este constructor permite la creación de objetos SoapServer en modo WSDL o no-WSDL.
wsdl
Para utilizar el modo WSDL, debe definirse la URI del fichero
WSDL en este argumento. En otras situaciones, debe definirse
este argumento a null y definirse la opción uri.
options
Permite definir una versión SOAP por omisión (soap_version),
un juego de caracteres de codificación interna (encoding)
y una URI actor (actor).
La opción classmap puede ser utilizada para ligar
algunos tipos WSDL a clases PHP. Esta opción debe ser un
array con los tipos WSDL como claves y los nombres de las clases PHP
como valores.
La opción typemap es un array cuyas claves son
type_name, type_ns (URI del espacio de nombres),
from_xml (función de retrollamada aceptando un argumento de tipo string) y
to_xml (función de retrollamada aceptando un argumento de tipo objeto).
La opción cache_wsdl puede tomar uno de los valores
WSDL_CACHE_NONE,
WSDL_CACHE_DISK,
WSDL_CACHE_MEMORY o
WSDL_CACHE_BOTH.
La última opción es features
que puede ser definida a
SOAP_WAIT_ONE_WAY_CALLS,
SOAP_SINGLE_ELEMENT_ARRAYS,
SOAP_USE_XSI_ARRAY_TYPE.
La opción send_errors puede ser definida a false para enviar
un mensaje de error genérico ("Internal error") en lugar del mensaje de error
específico.
Ejemplo #1 Ejemplos con SoapServer::__construct()
<?php
$server = new SoapServer("some.wsdl");
$server = new SoapServer("some.wsdl", array('soap_version' => SOAP_1_2));
$server = new SoapServer("some.wsdl", array('actor' => "http://example.org/ts-tests/C"));
$server = new SoapServer("some.wsdl", array('encoding'=>'ISO-8859-1'));
$server = new SoapServer(null, array('uri' => "http://test-uri/"));
class MyBook {
public $title;
public $author;
}
$server = new SoapServer("books.wsdl", array('classmap' => array('book' => "MyBook")));
?>