phpbar.de logo

Mailinglisten-Archive

[php] PEAR::SOAP und Arrays ?

[php] PEAR::SOAP und Arrays ?

Johannes Schlueter schlueter at phpbar.de
Fre Aug 26 20:29:01 CEST 2005


Hallo Norbert,

On Friday 26 August 2005 16:00, Norbert Pfeiffer wrote:
> > mal eine dumme Frage: wie serialisiert man
> > ein Array ? ist das was SOAP spezifisches ?
>
> eher nicht ...

in diesem Fall wohl schon.

> Es liegt die Vermutung nahe, dass die Funktion serialice();
> von PHP etwas liefert, was auch andere Sprachen verstehen,
> wenn sie es denn wollen.

Würden sie es wollen wäre es sicher möglich, ist aber nur eingeschränkt sinnig 
- PHPs serialisierungs-Routinen sind an die PHP Datentypen angepasst, andere 
sprachen haben ein anderes Typen-System.

> Ausserdem sendet SOAP die Daten via HTTP und damit immer
> als String. Daraus folgt, dass man alles in Strings umwandeln
> sollte - mal rein von der Logik her ...

String ist eine umfassende Begriff - jede beliebige definition von Bytes kann 
als String angesehen werden - ob es Sinn macht hängt vom System ab...

> Auch sollte jeder Webservice irgendwo eine Beschreibung seiner
> Schnittstelle hinterlegt haben, wenn er frei verfuegbar sein
> will. Wirst'e wohl mal suchen muessen ... ;-)

Wie es schon im Topic steht handelt es sich um SOAP. SOAP ist ein 
RPC-Protokoll, dass auf dem Austausch von in XML-formatierten Daten basiert. 
Dabei müssen die Daten in ein Format gebracht werden, dass transportabel und 
über Programmier-Sprachen und Computer-Systeme hinweg funktioniert. Im 
endeffekt soll es sowohl mit einer schwach typisierten Sprache wie auch einer 
Typfesten Sprache funktionieren. Die SOAP-Entwickler haben sich daher ein 
komplexes System ausgedacht mit dem sich beliebige Datenstrukturen (Objekte, 
daher das O in SOAP) systemunabhängig in XML abbilden lassen. Und die 
Dokumentation die Dir fehlt ist das in der Ausgangsmail zitierte WSDL, die 
Beschreibung der erwarteten Datenstruktur in einem Maschinenlesbaren Format.

Den Schmarrn mit dem serialize() in diesem Kontext also bitte vergessen. Zum 
eigentlichen Thema kann ich nur den Vorschlag machen mal PHP 5 ext/soap zu 
testen, da ich mit PEAR::SOAP noch überhaupt nichts gemacht habe.

johannes, der sich manchmal fragt ob es Leute gibt die absichtlich FUD streuen

php::bar PHP Wiki   -   Listenarchive