2013-07-27 3 views
2

Я создаю веб-службу с классом SoapServer PHP. Использование класса classmap прекрасно работает, и типы WSDL корректно сопоставляются с типами PHP. Однако я не могу понять, как создаются экземпляры сопоставленных классов.Создание объекта класса SoapServer PHP

Есть ли способ создать объект, сгенерированный SoapServer? Например, что-то вроде метода магии __set_state.

Пример: Я использую дату и дату dsetime xsd соответственно. Я хочу, чтобы они были преобразованы в классы DateTime PHP. То, что я не хочу делать, - это процесс нижестоящего процесса, который делает это.

ответ

0

Насколько я знаю, правильный способ сделать это: typemap вариант для SoapServer. Например,

$options = array (
    'typemap' => array (
     array(
      'type_name' => 'XMLNodeForMyClass', 
      'type_ns' => 'urn:localurn', 
      'from_xml' => 'MyClass::fromSOAP', 
      'to_xml' => 'MyClass::toSOAP' 
     ) 
    ) 
); 

class MyClass { 
    static public function fromSOAP(string $xml) {} 
    static public function toSOAP(MyClass $Outgoing) {} 
} 
Смежные вопросы