2016-03-30 36 views
-2
stdClass Object 
( 
    [string] => Array 
    ( 
     [0] => EXL 
     [1] => TEMPS 
    ) 
) 


stdClass Object 
( 
    [string] => IP 
) 

Wie Zugriff auf EXL, TEMPS und IP-Werte mit einer Schleife für?Zugriff auf Array-Werte auf einem PHP-Objekt

+1

versuchen so etwas wie '$ Array-> string -> {0 } ' –

+0

' $ array-> string [0] 'dies wird EXL – aldrin27

Antwort

1

Sie müssen auf das übergeordnete Array als Objekt zugreifen, aber das untergeordnete Array ist normal.

SO versuchen Sie dies.

$array->string[0]; //get the EXL 

Beispiel:

$array = array(
    "string" => array("EXL", "TEMPS"), 
    "string2" => array("EXL 2", "TEMPS 2"), 
); 

$obj_arr = (Object) $array; 
echo "<pre>"; 
print_r($obj_arr); 
echo "</pre>"; 

echo $obj_arr->string[0]."<br/>".$obj_arr->string[1]; 

Output:

EXL
TEMPS

+0

' für auf dem Array bedeutet ?? –

0

In Ihrem Fall ist dies eine Instanz einer Klasse, die Ihnen ein Objekt liefert.

Es gibt zwei häufig verwendete Methoden, um ein Array innerhalb eines Objekts zum Ziel:

// Loop through each stored data 
foreach($Object->string as $_string) 
{ 
    echo $_string; 
} 

Oder Sie das Array direkt zugreifen können:

echo $Object->string[0]; 

Die -> in PHP ist, wie wir Objekte (Karte) verwenden.

Beide funktionieren gut.

EDIT: Lesen Kommentare

Um das Array in dem Objekt innerhalb eines for Schleife gehalten Zugang:

// $i starts at 0 since array index's start at 0 
for($i = 0; $i < count($Obj->string); $i++) 
{ 
    echo $Obj->string[$i]; 
    // TODO: Add your code... 
} 
+0

'echo $ Object-> string -> {0}; // sieht einfach sauberer (IMO) 'falsch 0 ist ein Array-Index keine Eigenschaft. 'echo $ Obj-> string -> {$ i};' wie vorher ein Array-Index. – Rizier123

+0

Er hat nichts von dem gesagt, was Sie oben gesagt haben, wenn es Sie nervt, editieren Sie es. – KDOT

+0

OP muss nicht angeben, wenn alles in der Ausgabe ist. * wenn es mich ärgert *, hast du hier eine Antwort gepostet und ich weise einfach darauf hin, was bei deiner Antwort technisch falsch ist. – Rizier123

Verwandte Themen