SOAP: Gibt ein Array von xsd: any-Elementen in PHP zurück

Ich muss die SOAP-Anrufannahme gemäß WSDL zurückgeben. Alles funktioniert einwandfrei, bis auf die Rückgabe von xsd: any element. Teil der WSDL, mit der ich ein Problem habe (dies ist für die erwartete Antwort).

    xsd:complexType name="data"
        xsd:sequence
         xsd:any minOccurs="1" maxOccurs="unbounded"
        xsd:sequence
    xsd:complexType

Was ich versucht habe:

    foreach($data as $name=>$value) {
        $object->data->any[$name] = $value;
    }
    return $object;

Der SOAP-Aufruf gibt die folgende Antwort zurück:

    ..response>
    -data>value1value2value3value4-/data>
    .../response>

Obwohl vor der Rückgabe des Objekts ersichtlich ist, dass das Objekt so erstellt wurde, wie es hätte sein sollen:

    $object->data->any[name1] = value1
    $object->data->any[name2] = value2

    etc...

Im Rückgabeantrag werden jedoch alle Werte nur in einer Zeichenfolge in ein Rückgabefeld eingefügt. Dieser Code und die Rückgabe funktionieren ordnungsgemäß mit jedem anderen Feldtyp (z. B. xsd: string usw.).

Wie soll das Objekt im Fall von xsd: any type zurückgegeben werden, um die Antwort mit mehreren Feldern entsprechend den Namen und Werten zu erhalten?

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage