SOAP, result-array

drachenflieger

Grünschnabel
hi @ all,

ein soap liefert auf

PHP:
echo "<pre>";
print_r($aResult);
echo "</pre>";

folgendes:
Code:
stdClass Object
(
    [a] => 
    [b] => 
    [ c] => 2
    [d] => 391
    [e] => Array
        (
            [0] => Array
                (
                    [f] => wert 11 ...
                    [g] => wert 12 ...
                    [h] => wert 13 ...
                    [i] => wert 14 ...
                    [j] => wert 15 ...
                    [k] => wert 16 ...
                    [m] => wert 17 ...
                )

            [1] => Array
                (
                    [f] => wert 21 ...
                    [g] => wert 22 ...
                    [h] => wert 23 ...
                    [i] => wert 24 ...
                    [j] => wert 25 ...
                    [k] => wert 26 ...
                    [m] => wert 27 ...
                )

        )

)

sind hier 2 arrays verschachtelt ?

ich komme an die werte nicht dran ... wie kann ich z.b. "wert 11 ..." anzeigen lassen ?

danke euch

grüsse
drachenflieger
 
Ich weiss zwar nicht was Soap ist aber normal würde man ein mehrdimensionales Array etwa so auslesen:
Code:
$Wert=$Array[0][f];
echo $Wert;


Oder eben neu befüllen:
Code:
$WertNeu = 'wert 555';
$Array[0][f] = $WertNeu;


Vieleicht hilft dir das weiter.
 
Wenn du das ganze einrückst, sollte klar werden, wie es verschachtelt ist.

Code:
stdClass Object
(
	[a] =>
	[b] =>
	[ c] => 2
	[d] => 391
	[e] => Array
		(
			[0] => Array
				(
					[f] => wert 11 ...
					[g] => wert 12 ...
					[h] => wert 13 ...
					[i] => wert 14 ...
					[j] => wert 15 ...
					[k] => wert 16 ...
					[m] => wert 17 ...
				)
			[1] => Array
				(
					[f] => wert 21 ...
					[g] => wert 22 ...
					[h] => wert 23 ...
					[i] => wert 24 ...
					[j] => wert 25 ...
					[k] => wert 26 ...
					[m] => wert 27 ...
				)
		)
)

An "wert 11" kommst du so in etwa (hab von php kaum Ahnung vorallem von arrays/objekten)

PHP:
$aResult['e'][0]['f'];
 
hi joe,

danke für deine antwort ...

ja, eben ... dachte ich auch

wenn ich das in meinem script einbaue:

PHP:
$wert=$aResult[0][f];
echo $wert;

wird diese fehlermeldung angezeigt:

Fatal error: Cannot use object of type stdClass as array in ...

die fehler-zeile ist:
PHP:
$wert=$aResult[0][f];

meine vermutung ist, dass
1. array: a,b,c,d,e
dann folgt ein array in e
und dort ist f

daher meinte ich auch schon so:

PHP:
$wert=$aResult[e][0][f];

kommt aber die gleiche fehlermeldung ;-)
 
Wie kommt das CPoly? Ist bei $wert=$aResult->e[0]['f']; das "e" ein Objekt von $aResult in dem dann ein Array ist?

Hätte vermutlich genau den selben Fehler gemacht wie drachenflieger.
 
Aha vielen Dank. Ich bin tatsächlich von einem mehrdimensionalen Array ausgegengen. OOP habe ich bisher höchstens gestreift. Wieder etwas gelernt :)
 
steht ganz klar in der Auswertung ob es sich um ein Array oder ein Objekt handelt
Code:
stdClass Object
(
    [e] => Array
        (
            [0] => Array
                (
                    [f] => wert 11 ...

Bei Objekten immer mit ->key
Bei Arrays mit [key]
 
  • Gefällt mir
Reaktionen: Joe
Zurück