尽管在php.ini中启用了allow_url_fopen和simpleXML,为什么SimpleXMLElement未定义?

时间:2011-11-27 17:31:58

标签: php xml simplexml

我的代码只返回:

  

致命错误:调用未定义的函数SimpleXMLElement()   /path/to/xmltest.php   在第6行

代码本身:

<?php
$language_url = "http://www.fakesite.com/api/FAKEAPIKEY/languages.xml";

// Passing the XML
$data = file_get_contents($language_url);
$books = SimpleXMLElement($data);

//-------------------
// Passing a filename
//$books = SimpleXMLElement($language_url, null, true);
?>

当然,$language_url是有效的,但我因隐私问题而对其进行了更改。它驻留在我尝试运行此脚本的不同站点上。

2 个答案:

答案 0 :(得分:5)

SimpleXMLElement是simplexml的一个类,
你应该像通常的对象一样实例化它: -

$books = new SimpleXMLElement($data);

或程序功能

 $books = simplexml_load_string($data); // load from string
 $books = simplexml_load_file($url);   // load from file

答案 1 :(得分:2)

是否加载了SimpleXML库?在php.ini中查找一行;extension=simplexml.so并删除分号。重启你的http服务,它应该可以工作。