2010-07-02 67 views
1

我創建了一個簡單的函數獲取XML非對象:成員函數和

function meteor(){ 
    $request_url = "http://site.com/xml.xml"; 
    $xml = simplexml_load_file($request_url) or die("feed not loading"); 
    return $xml; 
} 

,但我不能調用此函數:

$xmls = new meteor(); 
echo $xmls->Kemo->Area; 

我沒有任何輸出,因爲流星不是班級。在這種情況下,如何從函數中獲取數據? 在此先感謝

+0

給我們顯示一些錯誤?並嘗試var_dump xml變量。 – RobertPitt 2010-07-02 11:01:22

+2

試試'$ xmls = meteor();'(不帶'new'關鍵字)。 – BoltClock 2010-07-02 11:02:29

+0

@Robert; 「試圖獲取非對象的屬性」,$ xmls = meteor();作品完美。 謝謝 – TheNone 2010-07-02 11:10:18

回答

5
$xmls = meteor(); 
$xmls->Kemo->Area; 
+1

你已經獲得了速度惡魔徽章(嗯,它有一個)。 – Gordon 2010-07-02 11:03:36

+1

hehe謝謝:)我會把這個徽章放在我虛構的徽章收藏桌上;) – 2010-07-02 11:10:26

1

流星是一個函數不是類。我不認爲你可以創建一個

new meteor(); 
2

您可以使用new只帶班,以創建該類的新對象。 meteor是一個函數,而不是一個類。你想要的是調用函數,而不是像這樣:

$xmls = meteor(); 
1

基本代碼是錯誤的。 請務必記住,您不能使用「new」關鍵字來實例化函數。這個「新」關鍵字只會用於將類實例化到對象中。

嘗試將函數直接調用到您的代碼中,以獲取適當的值。但在此之前,我認爲你需要根據你想要達到的目標來修改你的「meteor()」函數。

希望它有幫助。