echo $begrüßung;
Ich wage mit meiner geringen PEAR::SOAP-Erfahrung mal zu antworten.
Was verwendest du? NuSoap? ich bin bzgl. SOAP bibliothek offen für alles/neues.
Gar keins. Bei meinen Versuchen blieb ich aber bei PEAR::SOAP hängen. Das schien mir das umfangreichste zu sein. Bei den anderen fehlte immer irgendwas.
Ich müsste der SOAP Library irgendwie sagen können dass er numerische kinder-zweige in einem assoziativen array durch gleichnamige XML-siblings ausdrücken soll (anstatt durch generische items).
Verwende kein Array sondern packe deine Werte einzeln in SOAP_Values und die wiederum in ein SOAP_Value vom Typ SOAPStruct (oder was anderes passendes) und so schachteslt du dir selbst deine Struktur zusammen. Schau dir mal das Beispiel example_types.php im Verzeichnis docs/SOAP/example an.
In Base.php gibt es eine Methode SOAP_Base::_serializeValue(). Dort wird für Arrays in einer foreach-Schleife dein item erzeugt, wenn die Elemente keine SOAP_Values sind. Die sieht verkürzt so aus:
foreach ($value as $array_val)
if ($this->_isSoapValue($array_val))
$xmlout_value .= $this->_serializeValue($array_val, $array_val->name, ...);
else
$xmlout_value .= $this->_serializeValue($array_val, 'item', ...);
Also, verwende SOAP_Values statt nativer PHP-Variablen und alles wird gut ...
echo "$verabschiedung $name";