0

objectsIntoArray()PHPを使用してxmlを配列に解析しようとしていますが、エラーが発生していますCall to undefined function objectsIntoArray()

誰か助けてください

4

2 に答える 2

2

SimpleXML 拡張機能が見つからないか、インストールされていないか、PHP バージョンまたは SimpleXML バージョンが間違っています。

  1. http://www.php.net/manual/en/simplexml.installation.phpを確認phpinfo()して確認してください
  2. 郵便番号

だから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));
?>
于 2012-07-24T06:55:08.390 に答える
1

objectsIntoArray()PHP の標準の組み込み関数ではないため、自分で作成していない場合は未定義になります。

作成した場合は、関数を含む適切なファイルを含めていない可能性があります。

SimpleXML クラスの PHP マニュアル ページのコメントに同じ名前の関数が投稿されていることに気付きました。http://php.net/manual/en/book.simplexml.php を参照しobjectsIntoArray. これが探していた機能である場合は、ここから直接コピーして貼り付けて使用できます。

于 2012-07-24T06:54:16.960 に答える