XML ドキュメントを連想配列に変換しようとしています。配列の名前を xml ドキュメントのルート ノードにします。でこの情報を取得し$xml->getName()ます。
このステートメントを使用して空の配列を作成することを考えましたが、機能しません。
$($xml->getName()) = array();
他の方法は、一時変数を作成して名前を変更する必要があります$xml->getName()。PHPでこれを行う方法はありますか?
次の方法で作成できます。
${$xml->getName()} = array();
実行時エラーを回避するために、名前を検証して PHP 変数名の基準を満たしていることを確認することもできます。
ジョージは正しい${$xml->getName()} = array();です。基本的には、あなたが求めていることを行うことができます。
lonesomeday が示唆したように、これは悪い考えです。そのすべての機能を関数にラップし、単にそれをより大きなコンテキストに戻すのが最善です。慣れていない場合は、配列のキーにしてください。ただし、問題は次のとおりです。
<root>、それらは互いに殺し合います (これにより、配列キーの使用さえ妨げられます)。