gelöschter Benutzer
PHP Arrays SOAP-serialisiert
Hallo zusammen,
währen der Kommunikationsversuche mit einem PHP Webdienst, bin ich auf einen etwas seltsamen PHP-Datentypen gestoßen. Da werden Arrays verlangt, die via einem Key zugreifbar sind. Lauf Definition sollte das z.B. so aussehen:
<?php
$blabla = array('ip' => '127.0.0.1');
?>
IMHO können Arrays keinen Schlüssel haben sondern sind lediglich eine Aneinanderreihung von Objekten. Ist in PHP halt so, sei's drum.
Wie aber sehen solche Daten SOAP-serialisiert aus, wenn sie via POST an einen PHP-Webdienst gesendet werden sollen? Was erwartet da der Webdienst?
Danke schon mal fürs lesen.
Servus,
Klaus
gelöschter Benutzer
Hallo Klaus
Erfahrung mit SOAP habe ich bislang keine.
Hilft dir das weiter? php.net/manual/de/book.soap.php
Du kannst Arrays aber auch ohne Schlüssel in PHP angeben.
Würde dann bei deinem Beispiel dann so aussehen.
$blabla = [\'127.0.0.1\']; um auch mal die von mir bevorzugte Syntax ab PHP 5.4 anzuwenden.
Zugriff bei deinem Beispiel erfolgt so. $blabla[\'ip\'] bei meinem Array erwische ich das erste mit $blabla[0]
Gruß
Jörg
gelöschter Benutzer
Hallo Jörg,
wie Arrays funktionieren ist mir klar. Auch dass es keine Arrays mit Key gibt. Das ist dann entweder ein Dictionary (Schlüssel-Wert Paare) oder ein jagged Array.
Ich verwende kein PHP. Ich muss nur mit einem PHP Webdienst via SOAP (vermutlich JSON) kommunizieren. Die Daten werden normalerweise von PHP mittels der PHP-Klasse SoapClient an den Server übermittelt. Die eigentliche Frage ist jetzt:
Wie sehen die Daten aus, die von der Klasse SoapClient an den Server gesendet werden? Normalerweise würde das Beispiel aus meinem vorherigen Post so aussehen:
{\'ip\':\'127.0.0.1\'}
Wenn die Daten so serialisiert werden, bekomme ich vom Server immer einen 500 zurück. In welche Form serialisiert die Klasse SoapClient die angegebenen Arrays mit Key?
Servus,
Klaus
Das Seitenreport Forum hat aktuell 5272 Themen und 36104 Beiträge.
Insgesamt sind 496 Mitglieder registriert.
Beitrag erstellen
EinloggenKostenlos registrieren