PHP Soap Server: создание экземпляра со строкой (строка xml) вместо WSDL file (url to it)

PHP-страница Soap Server (я ее видел):

http://www.php.net/manual/en/ soapserver.soapserver.php

Но мне не хватает важной документации по моей собственной проблеме:

Мне нужно знать, можно ли создать экземпляр Сервера напрямую с помощью строки XML, например SimpleXML класс:

//From var (the one I want):
$movies = new SimpleXMLElement($xmlstr);

или

//From file and from string (the one I want):
$xml = simplexml_load_file('test.xml');

$xml = simplexml_load_string($string);

Поэтому я хотел бы сделать что-то вроде этого:

$wsdl_cont = file_get_contents("../xmls/mywsdl.wsdl");
$server = new SoapServer($wsdl_cont);

Возможно ли?

Причина в том, что у меня есть несколько разных URL-адресов, которые должны использовать тот же XML, поэтому мне нужно на лету заменить URL-адрес шаблона и изменить его на правильный, а затем, загрузите WSDL. Но я не хочу сохранять на жестком диске мгновенно сгенерированный WSDL, чтобы удалить его сразу после прочтения.

Можно ли создать какой-то «виртуальный файл» на PHP и использовать его, как если бы это был файл для чтения с диска? Какой-то буфер потока? Или какой-то файловый дескриптор на лету?

7
задан hakre 16 November 2011 в 13:51
поделиться