调用未定义的函数objectsIntoArray()-PHP
我想解析xml到数组中使用objectsIntoArray()
使用PHP,我得到错误Call to undefined function objectsIntoArray()
。调用未定义的函数objectsIntoArray()-PHP
请人帮助
SimpleXML Extension缺失,未安装,或者您有错误的PHP版本或SimpleXML版本。
- 检查
phpinfo()
和检查http://www.php.net/manual/en/simplexml.installation.php - 邮编
所以objectsIntoArray()
它只是一个手工制作的功能。它不是内置在PHP中,所以你必须手动包含它。
<?php
function objectsIntoArray($arrObjData, $arrSkipIndices = array()){
$arrData = array();
if (is_object($arrObjData))
$arrObjData = get_object_vars($arrObjData);
if (is_array($arrObjData))
foreach ($arrObjData as $index => $value) {
if(is_object($value) || is_array($value))
$value = objectsIntoArray($value, $arrSkipIndices);
if(in_array($index, $arrSkipIndices))
continue;
$arrData[$index] = $value;
}
return $arrData;
}
$xmlString = "
<html>
<head>
<link blabla='whargarbl' />
</head>
</html>
";
$xmlObject = simplexml_load_string($xmlString);
$arrayXml = objectsIntoArray($xmlObject);
die(var_dump($arrayXml));
?>
在php.iniRevision中启用Simplexml支持 - \t $修订版:1.151.2.22.2.35.2.32 $和PHP版本是5.3.0.Please通知 – phpwomen 2012-07-24 07:00:57
$ xmlString = file_get_contents($ fileName); $ xmlObject = simplexml_load_string($ xmlString); $ arrayXml = objectsIntoArray($ xmlObject); – phpwomen 2012-07-24 07:04:16
这是一个对象成员。使用'$ arrayXml = $ xmlObject-> objectsIntoArray($ xmlObject); ' – 2012-07-24 07:07:10
objectsIntoArray()
是不是一个标准的内置函数在PHP,所以如果你还没有自己写它,然后它会确实是不确定的。
如果您已经编写了它,那么也许您没有包含包含该函数的相应文件。
我注意到有人在SimpleXML类的PHP手册页的注释中发布了一个具有相同名称的函数 - 请参阅http://php.net/manual/en/book.simplexml.php并搜索objectsIntoArray
。如果这是你正在寻找的功能,你可以直接从这里复制+粘贴并使用它。
感谢它的工作 – phpwomen 2012-07-24 08:41:59
您还没有定义'objectsIntoArray()'。我相信你想要的是[此评论](http://www.php.net/manual/en/book.simplexml.php#97555)。 – 2012-07-24 06:54:08
谢谢您Alvin Wong – phpwomen 2012-07-24 08:43:20