2012-04-17 57 views
1

我在PHP中有一個名爲$ definition的對象。PHP中對象的訪問部分

當我

print_r($definition); 

我得到

陣列([0] =>定義對象([extendedText] => [文本] =>任何的家族的幾個食肉穴居哺乳動物鼬科,如歐亞大陸的梅爾斯梅勒或北美洲的南方紅豆杉,腿短,前爪長爪,外皮厚重。[源代碼] => ahd-legacy [citations] => Array()[labels] => Array()[score] => 0 [exampleUses] => Array()[attributionUrl] => [seqString] => [attributionText] =>從T他是美國文化遺產英語詞典第4版[relatedWords] => Array()[sequence] => 0 [word] => badger [textProns] => Array()[notes] => Array()[partOfSpeech ] =>名詞))

如何打印出「text」和「partOfSpeech」組件?

我試過$定義 - >文本,$定義[0] [ '文本'],$定義[ '文本'] ...

我迷路了......

回答

5

嘗試:

echo $definition[0]->text;

echo $definition[0]->partOfSpeech;

其創建的對象作爲數組的第一個索引:)

編輯: 使用PHP,你其實可以多個對象存儲在陣列中。這是很酷的,因爲強似一噸的,爲了討論,以期文章,你可以做喜歡的事,真棒:

<?php 
$articles = array(); 

for($i = 0; $i < 10; $i ++) 
{ 
    $articles[$i] = new Article("Article $i", "Hello, this is $i"); 
} 

?> 

所以在這個例子(和你),而不是設置變量文章到一個對象,我們已經將數組的索引設置爲一個對象。

因此,如果我們想拉出第三文章,我們會做:

<?php 
    echo $articles[2]; // remember arrays start at 0 ;) 
?> 

所以你vardump,我們可以看到,其相關的索引爲0到該對象。

討厭它爲什麼這樣做。

你可以做但是這砸:

<?php 
$definition = array_pop($definition[0]); 

echo $definition->text; 
?> 
+1

「你能接受在12分鐘內回答」 ......在那之前,把我的第一個孩子。 – citruspi 2012-04-17 23:13:02

+0

哈哈哈,謝謝哥們。我會在12分鐘內給它回覆;) – Menztrual 2012-04-17 23:13:35

+0

不,謝謝...在過去的30分鐘裏,我一直在拍攝自己... – citruspi 2012-04-17 23:14:20