2012-02-01 23 views
2

打印或回聲數組我有一個數組名爲$結果,當我使用功能:試圖在數組

print_r($results); 

我得到以下。

Array 
(
    [0] => ProfileElement Object 
     (
      [name] => John thomson 
      [email] => [email protected] 
      [Bio] => 20 years of engineering expertise 
      [url] => http://twitter.com 
     ) 
) 

我的目標是分別回顯[name] [email] [Bio] [url]值。但是當我在php中編寫下面的代碼時,我沒有得到任何值?

echo $results[0]["ProfileElement Objects"]["Bio"]; 

有沒有人知道爲什麼?這不是數組內的數組嗎?

回答

9

看起來數組元素包含一個對象,而不是另一個數組。要訪問對象屬性,請使用->運算符:

echo $results[0]->Bio; 
+0

謝謝,我不知道,物體可以被存儲在陣列:) – 2012-02-02 08:03:06

5

您已經關閉。

echo $results[0]->bio; 

可能是你想要的。 $result[0]是一個對象。

此外,根據可見性,您可能需要使用getter方法。

+0

如果是私人或受保護的,'print_r'會顯示在輸出中。 ''[生物:保護] => 20年的工程專業知識' – webbiedave 2012-02-01 20:45:16

+1

的一些東西是正確的,但回聲不會。 – 2012-02-01 20:46:48

2

刪除[ 「ProfileElement對象」]

echo $results[0]->Bio; 
1

嘗試這樣做:

$results[0]->name; 

ProfileElement對象是對象類型。

+0

我不認爲你可以在對象上使用數組符號。 ;) – Crontab 2012-02-01 20:40:30

1

它是一個數組內的對象。它看起來像你應該能夠訪問它作爲$results[0]->name,$results[0]->email

1

這是一個對象。您可以使用得到「生物」值:

echo $results[0]->Bio;