ホームページ  >  記事  >  バックエンド開発  >  PHP で SimpleXML オブジェクトを配列に効率的に変換するにはどうすればよいですか?

PHP で SimpleXML オブジェクトを配列に効率的に変換するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-27 05:26:02910ブラウズ

How to Efficiently Convert a SimpleXML Object to an Array in PHP?

SimpleXML オブジェクトを配列に変換: より効率的で堅牢なアプローチ

データ操作の領域では、SimpleXML オブジェクトを配列に変換します。配列は一般的なタスクになる可能性があります。提供された質問で概説されている json_decode() 関数を使用した方法は効果的ですが、最も効率的または堅牢なアプローチではない可能性があります。別の解決策は次のとおりです。

PHP マニュアルには、特にこの変換プロセスに対応する xml2array と呼ばれる関数が提供されています。この関数は、SimpleXML オブジェクトを再帰的に繰り返し、各ノードを配列要素に変換することによって機能します。以下に例を示します。

<code class="php">function xml2array($xmlObject, $out = array())
{
    foreach ((array)$xmlObject as $index => $node)
        $out[$index] = (is_object($node)) ? xml2array($node) : $node;

    return $out;
}</code>

この関数は、SimpleXML オブジェクトを連想配列に効果的に変換します。キーはノード名、値は文字列または子ノードを表すネストされた配列のいずれかです。

XML を配列に変換するとデータの操作が容易になりますが、その代償として XML ノードに付加された属性が失われることに注意することが重要です。したがって、変換された配列から元の XML 構造を再作成できるとは限りません。

以上がPHP で SimpleXML オブジェクトを配列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。