2010-07-02 66 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()”函数。

希望它有帮助。