2012-01-12 9 views
0

CakePHPフレームワークのXMLクラスでtoArrayを使ってXMLを配列に変更しようとしています。XMLをCakephpで配列して保存する

以下

は、アレイの出力です:

[state] => Array 
         (
          [0] => Array 
           (
            [@code] => ACT 
            [post_code] => Array 
             (
              [0] => Array 
               (
                [@code] => 2600 
                [locality] => Array 
                 (
                  [0] => Array 
                   (
                    [@name] => DEAKIN 
                    [dwelling_type] => Array 
                     (
                      [@code] => H 
                      [typical_value] => Array 
                       (
                        [@rank] => 3341/3697 
                        [@] => 831000 
                       ) 

                      [dom] => Array 
                       (
                        [@score] => 1 
                        [@rank] => 454/5673 
                        [@] => 56 
                       ) 

                      [discount] => Array 
                       (
                        [@score] => 0 
                        [@rank] => 779/5673 
                        [@] => 5% 
                       ) 

                      [acr] => Array 
                       (
                        [@score] => -1 
                        [@rank] => 914/5531 
                        [@] => 59% 
                       ) 

                      [renters] => Array 
                       (
                        [@score] => 0 
                        [@rank] => 5131/5627 
                        [@] => 42% 
                       ) 

                      [vacancy] => Array 
                       (
                        [@score] => 1 
                        [@rank] => 4714/5673 
                        [@] => 2.61% 
                       ) 

                      [yield] => Array 
                       (
                        [@score] => -1 
                        [@rank] => 678/3697 
                        [@] => 3.69% 
                       ) 

                      [som] => Array 
                       (
                        [@score] => 1 
                        [@rank] => 3915/5144 
                        [@] => 2.08% 
                       ) 

                      [search_dsr] => Array 
                       (
                        [@score] => -3 
                        [@rank] => 3578/4009 
                        [@] => 4.9 
                       ) 

                      [dsr] => Array 
                       (
                        [@rank] => 3121/5673 
                        [@] => 23 
                       ) 

                      [sr] => Array 
                       (
                        [@rank] => 2552/5673 
                        [@] => 5.8 
                       ) 

                     ) 

                   ) 

                  [1] => Array 
                   (
                    [@name] => YARRALUMLA 
                    [dwelling_type] => Array 
                     (
                      [0] => Array 
                       (

今の問題は、私はそれらを保存し、抽出必要なものを得ることができるように、どのように我々は実際にこれを変換することができますか?

私はACRなど@name、典型的な値は、DOM、割引を、必要...

は、このためのオプションを設定するコアライブラリのクラスを使用していますか?もしそうなら、どちらをお勧めしますか?

答えて

0

このような何かを試してみてください、それは価値を手に入れるためにはるかに簡単です:

 

$objXml = $yourXmlData; 
$arrXml = Set::reverse($objXml); 
debug($arrXml); 
 

は、実際に私は答えを見つけたことが

+0

を役に立てば幸い! Set :: extractを使用してxPathを使用してデータを抽出し、そこから配列を作成します。 –