- <sdts>
- <sdt>
  <name>audio</name> 
  <chinese>音频处理器</chinese> 
- <params>
- <param>
  <name>volume</name> 
  <chinese>设置音量</chinese> 
  <function>Audio_setVolume</function> 
  </param>
- <param>
  <name>mute</name> 
  <chinese>设置静音</chinese> 
  <function>Audio_setMute</function> 
- <values>
- <value>
  <name>1</name> 
  <chinese>设置音频处理器为静音</chinese> 
  </value>
- <value>
  <name>0</name> 
  <chinese>设置音频处理器为非静音</chinese> 
  </value>
  </values>
  </param>
- <param>
  <name>chanel</name> 
  <chinese>设置频道</chinese> 
  <function>Audio_setChanel</function> 
- <values>
- <value id="CP750">
  <name>多声道模拟信号</name> 
  <chinese>设置频道为多声道模拟信号</chinese> 
  </value>
- <value id="CP750">
  <name>数字信号1</name> 
  <chinese>设置频道为数字信号1</chinese> 
  </value>
- <value id="CP750">
  <name>数字信号2</name> 
  <chinese>设置频道为数字信号2</chinese> 
  </value>
- <value id="CP750">
  <name>数字信号3</name> 
  <chinese>设置频道为数字信号3</chinese> 
  </value>
- <value id="CP750">
  <name>数字信号4</name> 
  <chinese>设置频道为数字信号4</chinese> 
  </value>
- <value id="CP750">
  <name>非同步信号</name> 
  <chinese>设置频道为非同步信号</chinese> 
  </value>
- <value id="CP750">
  <name>话筒信号</name> 
  <chinese>设置频道为话筒信号</chinese> 
  </value>
- <value id="DCP800">
  <name>8通道模拟</name> 
  <chinese>设置频道为8通道模拟</chinese> 
  </value>
- <value id="DCP800">
  <name>8通道数字</name> 
  <chinese>设置频道为8通道数字</chinese> 
  </value>
- <value id="DCP800">
  <name>NSYNC模拟</name> 
  <chinese>设置频道为NSYNC模拟</chinese> 
  </value>
- <value id="DCP800">
  <name>NSYNC数字</name> 
  <chinese>设置频道为NSYNC数字</chinese> 
  </value>
- <value id="DCP800">
  <name>AUX模拟</name> 
  <chinese>设置频道为AUX模拟</chinese> 
  </value>
- <value id="DCP800">
  <name>AUX同轴</name> 
  <chinese>设置频道为AUX同轴</chinese> 
  </value>
+ <value id="DCP800">
  <name>AUX光纤</name> 
  <chinese>设置频道为AUX光纤</chinese> 
  </value>
- <value id="DCP800">
  <name>话筒</name> 
  <chinese>设置频道为话筒</chinese> 
  </value>
  </values>
  </param>
  </params>
  </sdt>
+ <sdt>
  <name>projector</name> 
  <chinese>投影机</chinese> 
- <params>
- <param>
  <name>colorspace</name> 
  <chinese>切换色彩空间</chinese> 
  <function>Projector_setColorspace</function> 
+ <values>
- <value id="DP90">
  <name>MPEG2遮幅</name> 
  <chinese>切换色彩空间为MPEG2遮幅</chinese> 
  </value>
- <value id="DP90">
  <name>MPEG2宽荧幕</name> 
  <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
  </value>
- <value id="DP90">
  <name>JPEG2000遮幅</name> 
  <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
  </value>
- <value id="DP90">
  <name>JPEG2000宽荧幕</name> 
  <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
  </value>
- <value id="DP100">
  <name>MPEG2遮幅</name> 
  <chinese>切换色彩空间为MPEG2遮幅</chinese> 
  </value>
- <value id="DP100">
  <name>MPEG2宽荧幕</name> 
  <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
  </value>
- <value id="DP100">
  <name>JPEG2000遮幅</name> 
  <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
  </value>
- <value id="DP100">
  <name>JPEG2000宽荧幕</name> 
  <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
  </value>
- <value id="DP1500">
  <name>MPEG2遮幅</name> 
  <chinese>切换色彩空间为MPEG2遮幅</chinese> 
  </value>
- <value id="DP1500">
  <name>MPEG2宽荧幕</name> 
  <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
  </value>
- <value id="DP1500">
  <name>JPEG2000遮幅</name> 
  <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
  </value>
- <value id="DP1500">
  <name>JPEG2000宽荧幕</name> 
  <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
  </value>
- <value id="DP2000">
  <name>MPEG2遮幅</name> 
  <chinese>切换色彩空间为MPEG2遮幅</chinese> 
  </value>
- <value id="DP2000">
  <name>MPEG2宽荧幕</name> 
  <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
  </value>
- <value id="DP2000">
  <name>JPEG2000遮幅</name> 
  <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
  </value>
- <value id="DP2000">
  <name>JPEG2000宽荧幕</name> 
  <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
  </value>
  </values>
  </param>
+ <param>
  <name>colorspace</name> 
  <chinese>切换灯泡开关</chinese> 
  <function>Projector_setLamp</function> 
- <values>
- <value>
  <name>1</name> 
  <chinese>打开灯泡</chinese> 
  </value>
- <value>
  <name>2</name> 
  <chinese>关闭灯泡</chinese> 
  </value>
  </values>
  </param>
+ <param>
  <name>colorspace</name> 
  <chinese>切换灯罩开关</chinese> 
  <function>Projector_setLamp</function> 
- <values>
- <value>
  <name>3</name> 
  <chinese>打开灯罩</chinese> 
  </value>
- <value>
  <name>4</name> 
  <chinese>关闭灯罩</chinese> 
  </value>
  </values>
  </param>
+ <param>
  <name>colorspace</name> 
  <chinese>设置投影模式</chinese> 
  <function>Projector_setModel</function> 
- <values>
- <value>
  <name>2</name> 
  <chinese>设置为2D模式</chinese> 
  </value>
- <value>
  <name>3</name> 
  <chinese>设置为3D模式</chinese> 
  </value>
  </values>
  </param>
  </params>
  </sdt>
xml 结构如上,
我想转化成 php 中数组的形式,如下:  $arr = array(                 "audio"=>array(
                                 "params"=>array(
                                                   "name"=>volume,
                                                    "chinese"=>设置音量,
                                                     "function"=>Audio_setVolume
                                                      "values"=>array(……)
                                                 )
                                )
              )貌似有点复杂,研究一天了,还没头绪!!

解决方案 »

  1.   

     $arr   =   array(                                   "audio "=> array( 
                                                                      "params "=> array( 
                                                                                                          "name "=> volume, 
                                                                                                            "chinese "=> 设置音量, 
                                                                                                              "function "=> Audio_setVolume 
                                                                                                                "values "=> array(……) 
                                                                                                      ) 
                                                                    ) 
                                ) 
      

  2.   


    <sdts>
    - <sdt>
      <name>audio</name> 
      <chinese>音频处理器</chinese> 
    - <params>
    - <param>
      <name>volume</name> 
      <chinese>设置音量</chinese> 
      <function>Audio_setVolume</function> 
      </param>
    - <param>
      <name>mute</name> 
      <chinese>设置静音</chinese> 
      <function>Audio_setMute</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>设置音频处理器为静音</chinese> 
      </value>
    - <value>
      <name>0</name> 
      <chinese>设置音频处理器为非静音</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>chanel</name> 
      <chinese>设置频道</chinese> 
      <function>Audio_setChanel</function> 
    - <values>
    - <value id="CP750">
      <name>多声道模拟信号</name> 
      <chinese>设置频道为多声道模拟信号</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号1</name> 
      <chinese>设置频道为数字信号1</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号2</name> 
      <chinese>设置频道为数字信号2</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号3</name> 
      <chinese>设置频道为数字信号3</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号4</name> 
      <chinese>设置频道为数字信号4</chinese> 
      </value>
    - <value id="CP750">
      <name>非同步信号</name> 
      <chinese>设置频道为非同步信号</chinese> 
      </value>
    - <value id="CP750">
      <name>话筒信号</name> 
      <chinese>设置频道为话筒信号</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道模拟</name> 
      <chinese>设置频道为8通道模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道数字</name> 
      <chinese>设置频道为8通道数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC模拟</name> 
      <chinese>设置频道为NSYNC模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC数字</name> 
      <chinese>设置频道为NSYNC数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX模拟</name> 
      <chinese>设置频道为AUX模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX同轴</name> 
      <chinese>设置频道为AUX同轴</chinese> 
      </value>
    + <value id="DCP800">
      <name>AUX光纤</name> 
      <chinese>设置频道为AUX光纤</chinese> 
      </value>
    - <value id="DCP800">
      <name>话筒</name> 
      <chinese>设置频道为话筒</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
    + <sdt>
      <name>projector</name> 
      <chinese>投影机</chinese> 
    - <params>
    - <param>
      <name>colorspace</name> 
      <chinese>切换色彩空间</chinese> 
      <function>Projector_setColorspace</function> 
    + <values>
    - <value id="DP90">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
      </values>
      </param>
    + <param>
      <name>colorspace</name> 
      <chinese>切换灯泡开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>打开灯泡</chinese> 
      </value>
    - <value>
      <name>2</name> 
      <chinese>关闭灯泡</chinese> 
      </value>
      </values>
      </param>
    + <param>
      <name>colorspace</name> 
      <chinese>切换灯罩开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>3</name> 
      <chinese>打开灯罩</chinese> 
      </value>
    - <value>
      <name>4</name> 
      <chinese>关闭灯罩</chinese> 
      </value>
      </values>
      </param>
    + <param>
      <name>colorspace</name> 
      <chinese>设置投影模式</chinese> 
      <function>Projector_setModel</function> 
    - <values>
    - <value>
      <name>2</name> 
      <chinese>设置为2D模式</chinese> 
      </value>
    - <value>
      <name>3</name> 
      <chinese>设置为3D模式</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
      

  3.   


    <sdts>
    - <sdt>
      <name>audio</name> 
      <chinese>音频处理器</chinese> 
    - <params>
    - <param>
      <name>volume</name> 
      <chinese>设置音量</chinese> 
      <function>Audio_setVolume</function> 
      </param>
    - <param>
      <name>mute</name> 
      <chinese>设置静音</chinese> 
      <function>Audio_setMute</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>设置音频处理器为静音</chinese> 
      </value>
    - <value>
      <name>0</name> 
      <chinese>设置音频处理器为非静音</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>chanel</name> 
      <chinese>设置频道</chinese> 
      <function>Audio_setChanel</function> 
    - <values>
    - <value id="CP750">
      <name>多声道模拟信号</name> 
      <chinese>设置频道为多声道模拟信号</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号1</name> 
      <chinese>设置频道为数字信号1</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号2</name> 
      <chinese>设置频道为数字信号2</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号3</name> 
      <chinese>设置频道为数字信号3</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号4</name> 
      <chinese>设置频道为数字信号4</chinese> 
      </value>
    - <value id="CP750">
      <name>非同步信号</name> 
      <chinese>设置频道为非同步信号</chinese> 
      </value>
    - <value id="CP750">
      <name>话筒信号</name> 
      <chinese>设置频道为话筒信号</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道模拟</name> 
      <chinese>设置频道为8通道模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道数字</name> 
      <chinese>设置频道为8通道数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC模拟</name> 
      <chinese>设置频道为NSYNC模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC数字</name> 
      <chinese>设置频道为NSYNC数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX模拟</name> 
      <chinese>设置频道为AUX模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX同轴</name> 
      <chinese>设置频道为AUX同轴</chinese> 
      </value>
    + <value id="DCP800">
      <name>AUX光纤</name> 
      <chinese>设置频道为AUX光纤</chinese> 
      </value>
    - <value id="DCP800">
      <name>话筒</name> 
      <chinese>设置频道为话筒</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
    + <sdt>
      <name>projector</name> 
      <chinese>投影机</chinese> 
    - <params>
    - <param>
      <name>colorspace</name> 
      <chinese>切换色彩空间</chinese> 
      <function>Projector_setColorspace</function> 
    - <values>
    - <value id="DP90">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>切换灯泡开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>打开灯泡</chinese> 
      </value>
    - <value>
      <name>2</name> 
      <chinese>关闭灯泡</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>切换灯罩开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>3</name> 
      <chinese>打开灯罩</chinese> 
      </value>
    - <value>
      <name>4</name> 
      <chinese>关闭灯罩</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>设置投影模式</chinese> 
      <function>Projector_setModel</function> 
    - <values>
    - <value>
      <name>2</name> 
      <chinese>设置为2D模式</chinese> 
      </value>
    - <value>
      <name>3</name> 
      <chinese>设置为3D模式</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
      </sdts>
      

  4.   


     $arr   =   array(                  "audio "=> array(  "params "=> array( "Audio_setVolume"=>array(                                                                                                                                             "name "=> volume, 
                                                                                       "chinese "=> 设置音量, 
                                                                                        "function "=> Audio_setVolume ,
                                                                                        "values "=> array(……) 
                                                                                     )
                                                                              ) 
                                                             "Audio_setMute"=>array(
                                                              "name "=> mute, 
                                                                                       "chinese "=> 设置音量, 
                                                                                        "function "=> Audio_setMute ,
                                                                                        "values "=> array(……) 
                                                              
                                                             
                                                             )
                                                          ) 
                                )  "projector"=>array(……)
    维度有点太深了…………
      

  5.   

    <?php 
    $dom = new DOMDocument();
    $data = file_get_contents("test.xml");
    $dom->loadXML($data);
    $simpleXML = simplexml_import_dom($dom);
    $return = parseXML($simpleXML,true);
    function parseXML($simpleXML,$isShow){
    global $ret;
    foreach ($simpleXML as $xml){
    $t = count($xml);
    $temp = $xml;
    if($isShow) echo($temp->getName()."=>");//键
    if($isShow) echo($temp);//值
    //这作判断赋值数组
    if($t==0){
    if($isShow) echo "<br>";
    }
    else{
    if($isShow) echo "<br>";
    parseXML($temp,$isShow);
    }
    }
    return $ret;
    }
    ?>不清楚楼主要什么样的数组 在给出注释的地方 对节点做判断赋值给数组
      

  6.   

     我估计LZ上的方法,可能不行,维度是五,就是把XML 每个结点,解析成关联数组。 <?xml version="1.0" encoding="UTF-8" ?> 
    - <!--  edited with XMLSpy v2009 sp1 (http://www.altova.com) by Administrator (EMBRACE) 
      --> 
    - <sdts>
    - <sdt>
      <name>audio</name> 
      <chinese>音频处理器</chinese> 
    - <params>
    - <param>
      <name>volume</name> 
      <chinese>设置音量</chinese> 
      <function>Audio_setVolume</function> 
      </param>
    - <param>
      <name>mute</name> 
      <chinese>设置静音</chinese> 
      <function>Audio_setMute</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>设置音频处理器为静音</chinese> 
      </value>
    - <value>
      <name>0</name> 
      <chinese>设置音频处理器为非静音</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>chanel</name> 
      <chinese>设置频道</chinese> 
      <function>Audio_setChanel</function> 
    - <values>
    - <value id="CP750">
      <name>多声道模拟信号</name> 
      <chinese>设置频道为多声道模拟信号</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号1</name> 
      <chinese>设置频道为数字信号1</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号2</name> 
      <chinese>设置频道为数字信号2</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号3</name> 
      <chinese>设置频道为数字信号3</chinese> 
      </value>
    - <value id="CP750">
      <name>数字信号4</name> 
      <chinese>设置频道为数字信号4</chinese> 
      </value>
    - <value id="CP750">
      <name>非同步信号</name> 
      <chinese>设置频道为非同步信号</chinese> 
      </value>
    - <value id="CP750">
      <name>话筒信号</name> 
      <chinese>设置频道为话筒信号</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道模拟</name> 
      <chinese>设置频道为8通道模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>8通道数字</name> 
      <chinese>设置频道为8通道数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC模拟</name> 
      <chinese>设置频道为NSYNC模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>NSYNC数字</name> 
      <chinese>设置频道为NSYNC数字</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX模拟</name> 
      <chinese>设置频道为AUX模拟</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX同轴</name> 
      <chinese>设置频道为AUX同轴</chinese> 
      </value>
    - <value id="DCP800">
      <name>AUX光纤</name> 
      <chinese>设置频道为AUX光纤</chinese> 
      </value>
    - <value id="DCP800">
      <name>话筒</name> 
      <chinese>设置频道为话筒</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
    + <sdt>
      <name>projector</name> 
      <chinese>投影机</chinese> 
    + <params>
    - <param>
      <name>colorspace</name> 
      <chinese>切换色彩空间</chinese> 
      <function>Projector_setColorspace</function> 
    - <values>
    - <value id="DP90">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP90">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP100">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP1500">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2遮幅</name> 
      <chinese>切换色彩空间为MPEG2遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>MPEG2宽荧幕</name> 
      <chinese>切换色彩空间为MPEG2宽荧幕</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000遮幅</name> 
      <chinese>切换色彩空间为JPEG2000遮幅</chinese> 
      </value>
    - <value id="DP2000">
      <name>JPEG2000宽荧幕</name> 
      <chinese>切换色彩空间为JPEG2000宽荧幕</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>切换灯泡开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>打开灯泡</chinese> 
      </value>
    - <value>
      <name>2</name> 
      <chinese>关闭灯泡</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>切换灯罩开关</chinese> 
      <function>Projector_setLamp</function> 
    - <values>
    - <value>
      <name>3</name> 
      <chinese>打开灯罩</chinese> 
      </value>
    - <value>
      <name>4</name> 
      <chinese>关闭灯罩</chinese> 
      </value>
      </values>
      </param>
    - <param>
      <name>colorspace</name> 
      <chinese>设置投影模式</chinese> 
      <function>Projector_setModel</function> 
    - <values>
    - <value>
      <name>2</name> 
      <chinese>设置为2D模式</chinese> 
      </value>
    - <value>
      <name>3</name> 
      <chinese>设置为3D模式</chinese> 
      </value>
      </values>
      </param>
      </params>
      </sdt>
      </sdts>
      

  7.   


    <sdts>
    - <sdt>
      <name>audio</name> 
      <chinese>音频处理器</chinese> 
    - <params>
    - <param>
      <name>volume</name> 
      <chinese>设置音量</chinese> 
      <function>Audio_setVolume</function> 
      </param>
    - <param>
      <name>mute</name> 
      <chinese>设置静音</chinese> 
      <function>Audio_setMute</function> 
    - <values>
    - <value>
      <name>1</name> 
      <chinese>设置音频处理器为静音</chinese> 
      </value>
    - <value>xml 结构图
      

  8.   

    令 $xmlstr 为你的 xml 的内容,则:
    $xml = new SimpleXMLElement($xmlstr);/*** 将 SimpleXMLElement 对象转换成数组 ***/
    function foo(&$obj) {
      if(gettype($obj) == 'object') {
        settype($obj, 'array');
      }
      if(is_array($obj))
      foreach($obj as &$v) {
        foo($v);
      }
    }foo($xml);
    print_r($xml); //打印结果由于不知道你想要的结果数组是什么样的,所以到此为止
    接下来的变换你自己做吧
      

  9.   

    俺们解析出来了! function convert($xml){
          $new_arr = array();
    foreach ($xml as $valueName):
        $new_arr[(string)$valueName->name] = array();
         $new_arr[(string)$valueName->name] = array((string)$valueName->name,(string)$valueName->chinese);
        $new_arr[(string)$valueName->name]['functions'] = array();
        if (isset($valueName->params)){
            foreach ($valueName->params[0] as $key=> $valueFunction):
            
                $new_arr[(string)$valueName->name]['functions'][(string)$valueFunction[0]->function] = array((string)$valueFunction->name,(string)$valueFunction->chinese);
                if (isset($valueFunction[0]->values)){
                    foreach ($valueFunction[0]->values as $valueValue):

                    $new_arr[(string)$valueName->name]['functions'][(string)$valueFunction[0]->function]["value"][(string)$value['id']][] = array();
                        foreach ($valueValue as $value):
                       //print_r($value['id']);
                $new_arr[(string)$valueName->name]['functions'][(string)$valueFunction[0]->function]["value"][(string)$value['id']][] = array(
                (string)$value->type,(string)$value->chinese);   
                        endforeach;
                    endforeach;
                }
            endforeach;
        }
    endforeach;
    print_r($new_arr);
         }
           
    Array
    (
        [audio] => Array
            (
                [0] => audio
                [1] => 音频处理器
                [functions] => Array
                    (
                        [Audio_setVolume] => Array
                            (
                                [0] => volume
                                [1] => 设置音量
                            )
     
                        [Audio_setMute] => Array
                            (
                                [0] => mute
                                [1] => 设置静音
                                [value] => Array
                                    (
                                        [] => Array
                                            (
                                                [0] => Array
                                                    (
                                                    )
     
                                                [1] => Array
                                                    (
                                                        [0] => 1
                                                        [1] => 设置音频处理器为静音
                                                    )
     
                                                [2] => Array
                                                    (
                                                        [0] => 0
                                                        [1] => 设置音频处理器为非静音
                                                    )
     
                                            )
     
                                    )
     
                            )
     
                        [Audio_setChanel] => Array
                            (
                                [0] => chanel
                                [1] => 设置频道
                                [value] => Array
                                    (
                                        [] => Array
                                            (
                                                [0] => Array
                                                    (
                                                    )
     
                                            )
     
                                        [CP750] => Array
                                            (
                                                [0] => Array
                                                    (
                                                        [0] => 多声道模拟信号
                                                        [1] => 设置频道为多声道模拟信号
                                                    )
     
                                                [1] => Array
                                                    (
                                                        [0] => 数字信号1
                                                        [1] => 设置频道为数字信号1
                                                    )
     
                                                [2] => Array
                                                    (
                                                        [0] => 数字信号2
                                                        [1] => 设置频道为数字信号2
                                                    )
     
                                                [3] => Array
                                                    (
                                                        [0] => 数字信号3
                                                        [1] => 设置频道为数字信号3
                                                    )
     
                                                [4] => Array
                                                    (
                                                        [0] => 数字信号4
                                                        [1] => 设置频道为数字信号4
                                                    )
     
                                                [5] => Array
                                                    (
                                                        [0] => 非同步信号
                                                        [1] => 设置频道为非同步信号
                                                    )
     
                                                [6] => Array
                                                    (
                                                        [0] => 话筒信号
                                                        [1] => 设置频道为话筒信号
                                                    )
     
                                            )
     
                                        [DCP800] => Array
                                            (
                                                [0] => Array
                                                    (
                                                        [0] => 8通道模拟
                                                        [1] => 设置频道为8通道模拟
                                                    )
     
                                                [1] => Array
                                                    (
                                                        [0] => 8通道数字
                                                        [1] => 设置频道为8通道数字
                                                    )
     
                                                [2] => Array
                                                    (
                                                        [0] => NSYNC模拟
                                                        [1] => 设置频道为NSYNC模拟
                                                    )
     
                                                [3] => Array
                                                    (
                                                        [0] => NSYNC数字
                                                        [1] => 设置频道为NSYNC数字
                                                    )
     
                                                [4] => Array
                                                    (
                                                        [0] => AUX模拟
                                                        [1] => 设置频道为AUX模拟
                                                    )
     
                                                [5] => Array
                                                    (
                                                        [0] => AUX同轴
                                                        [1] => 设置频道为AUX同轴
                                                    )
     
                                                [6] => Array
                                                    (
                                                        [0] => AUX光纤
                                                        [1] => 设置频道为AUX光纤
                                                    )
     
                                                [7] => Array
                                                    (
                                                        [0] => 话筒
                                                        [1] => 设置频道为话筒
                                                    )
     
                                            )
     
                                    )
     
                            )
     
                    )
     
            )靠!!