<?xml version="1.0" encoding="GB2312" ?>
<air_info>
< airline atime="1020" airrax="50" fulerax="0" food="1" dfly="1"> 
<c b="F" d="100" p="1700" s="A" /> 
  <c b="Y" d="100" p="1130" s="A" /> 
<c b="B" d="80" p="1020" s="A" /> 
  <c b="H" d="80" p="900" s="A" /> 
  <c b="L" d="75" p="850" s="A" /> 
  <c b="M" d="70" p="790" s="A" /> 
</airline>
</air_info>
book.xml文件问题:
1.我怎么通过foreach解析里面的属性;
2.解析出来以后我想要排序p的值,是从小-大排序;
如:
790
850
900
1020
1130
1700
请高手赐教……………………

解决方案 »

  1.   

    [code]
    <?php
    $str = "<?xml version=\"1.0\" encoding=\"GB2312\" ?>
    <air_info>
    <airline atime=\"1020\" airrax=\"50\" fulerax=\"0\" food=\"1\" dfly=\"1\"> 
    <c b=\"F\" d=\"100\" p=\"1700\" s=\"A\" /> 
      <c b=\"Y\" d=\"100\" p=\"1130\" s=\"A\" /> 
    <c b=\"B\" d=\"80\" p=\"1020\" s=\"A\" /> 
      <c b=\"H\" d=\"80\" p=\"900\" s=\"A\" /> 
      <c b=\"L\" d=\"75\" p=\"850\" s=\"A\" /> 
      <c b=\"M\" d=\"70\" p=\"790\" s=\"A\" /> 
    </airline>
    </air_info>
    ";
    $body = simplexml_load_string($str);
    $arr = array();
    for($i = 0; $i < count($body->airline->c);$i++) {
    $a = $body->airline->c->$i;
    foreach($a->attributes() as $key => $value) {
    if($key == "p") {
    array_push($arr,(string)$value);
    }
    }
    }
    asort($arr);
    print_r($arr);
    ?>
    [/code]
      

  2.   

    <?php
    $str = "<?xml version=\"1.0\" encoding=\"GB2312\" ?>
    <air_info>
    <airline atime=\"1020\" airrax=\"50\" fulerax=\"0\" food=\"1\" dfly=\"1\"> 
    <c b=\"F\" d=\"100\" p=\"1700\" s=\"A\" /> 
      <c b=\"Y\" d=\"100\" p=\"1130\" s=\"A\" /> 
    <c b=\"B\" d=\"80\" p=\"1020\" s=\"A\" /> 
      <c b=\"H\" d=\"80\" p=\"900\" s=\"A\" /> 
      <c b=\"L\" d=\"75\" p=\"850\" s=\"A\" /> 
      <c b=\"M\" d=\"70\" p=\"790\" s=\"A\" /> 
    </airline>
    </air_info>
    ";
    $body = simplexml_load_string($str);
    $arr = array();
    for($i = 0; $i < count($body->airline->c);$i++) {
    $a = $body->airline->c->$i;
    foreach($a->attributes() as $key => $value) {
    if($key == "p") {
    array_push($arr,(string)$value);
    }
    }
    }
    asort($arr);
    print_r($arr);
    ?>
      

  3.   

    说一下 < airline  这里不能有空格。
      

  4.   

    谁能给我一个用DOM方法解析?