我正在尝试objectsIntoArray()
使用 PHP 将 xml 解析为数组,但出现错误Call to undefined function objectsIntoArray()
。
请任何人帮助
我正在尝试objectsIntoArray()
使用 PHP 将 xml 解析为数组,但出现错误Call to undefined function objectsIntoArray()
。
请任何人帮助
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));
?>
objectsIntoArray()
不是 PHP 中的标准内置函数,因此如果您没有自己编写它,那么它确实是未定义的。
如果您已经编写了它,那么您可能没有包含包含该函数的适当文件。
我注意到有人在 SimpleXML 类的 PHP 手册页的注释中发布了一个同名函数——请参阅http://php.net/manual/en/book.simplexml.php并搜索objectsIntoArray
. 如果这是您正在寻找的功能,您可以直接从这里复制+粘贴并使用它。