/ / Aufruf an undefinierte Funktionen objectsIntoArray () -PHP - php, xml, xml-parsing

Aufruf an undefinierte FunktionsobjekteIntoArray () -PHP - php, xml, xml-parsing

Ich versuche, XML in ein Array zu parsen objectsIntoArray() mit PHP und ich bekomme Fehler Call to undefined function objectsIntoArray().

Bitte helfen Sie jedem

Antworten:

2 für die Antwort № 1

Die SimpleXML-Erweiterung fehlt, ist nicht installiert oder Sie haben eine falsche PHP-Version oder SimpleXML-Version.

  1. Prüfen phpinfo() und prüfe http://www.php.net/manual/en/simplexml.installation.php
  2. Postleitzahl</ s>

Damit objectsIntoArray() Es ist nur eine von Hand gemachte Funktion. Sie ist nicht in PHP integriert, so dass Sie sie manuell hinzufügen müssen.

<?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));
?>

1 für die Antwort № 2

objectsIntoArray() Dies ist keine Standardfunktion in PHP. Wenn Sie sie also nicht selbst geschrieben haben, ist sie in der Tat undefiniert.

Wenn Sie es geschrieben haben, haben Sie möglicherweise nicht die entsprechende Datei mit der Funktion eingefügt.

Ich stelle fest, dass dort jemand eine Funktion mit demselben Namen in den Kommentaren der PHP-Manualpage für die SimpleXML-Klasse gepostet hat - siehe http://php.net/manual/en/book.simplexml.php und suche nach objectsIntoArray. Wenn dies die Funktion ist, nach der Sie gesucht haben, können Sie sie direkt hier kopieren und einfügen und verwenden.