PHP bezieht sich auf Objektdaten mit numerischem Schlüssel

8

Ich habe ein Array so in Objektdaten umgewandelt:

%Vor%

Und die Ausgabe ist:

  

stdClass Objekt ([Daten] = & gt; stdClass   Objekt ([0] = & gt; null [1] = & gt; eins [2] = & gt;   zwei))

So weit, so gut. Aber wenn ich versuche, auf die numerischen Tasten zu verweisen ...

%Vor%

... nichts wird zurückgegeben! Ich würde erwarten, dass es "eins" widergibt.

Tue ich es falsch?

    
Al. 04.11.2009, 12:33
quelle

4 Antworten

15

Das ist eine Kuriosität in PHP, auf die Sie mit $object->data->{1} zugreifen müssen. Oder Sie können es zurück in Array konvertieren, um auf die Mitglieder zuzugreifen. Aber ich denke, es ist am besten, Eigennamen für Objektmitglieder zu haben, probiere so etwas aus, zum Beispiel:

%Vor%     
soulmerge 04.11.2009, 12:41
quelle
1

Sie könnten versuchen, darauf als Array-Element zuzugreifen. Aber ich bin mir nicht sicher, ob das funktionieren würde oder nicht. Was Sie jedoch tun können, ist das Schleifen der Objektelemente (oder besser Eigenschaften) mit einer foreach-Schleife.

Wie so:

%Vor%

Ich bin mir nur nicht sicher, ob Sie auch auf den Schlüssel zugreifen können.

    
Franz 04.11.2009 12:38
quelle
1

Das Problem, das Sie haben, ist, dass $counter für die Suche automatisch in String konvertiert wird. Probieren Sie

aus %Vor%

und du wirst sehen, was ich meine. Um dies zu umgehen, verwenden Sie die von Franz vorgeschlagene Methode.

    
Boldewyn 04.11.2009 12:43
quelle
-3
%Vor%

Wenn ich mich nicht irre.

    
Ben Dauphinee 04.11.2009 12:38
quelle

Tags und Links