var value=xmlDoc.selectSingleNode("//root/text").text;

解决方案 »

  1.   

    上面这种方法似乎不太妥当,我将程序添出来,希望大家给予帮助
      #get xml file
      $xmlpath = dirname(__FILE__) . "\\";
      $xmlfile = $xmlpath."report.xml";
      if(!$dom = domxml_open_file($xmlpath."report.xml")) 
      {
         echo "Error while parsing the document\n";
         exit;
      }
      #get root node
      $root = $dom->document_element();
      #get text node
      $text = $dom->get_elements_by_tagname("text");
      get text attribute
      $text_x = $text->get_attribute("x");
      现在的问题就是如何得到text的值.
      

  2.   

    $text = $dom->get_elements_by_tagname("text");
        if ($text)
        {
            for ($i=0;$i<count($text);$i++)
            {
                $temp=$text[$i];
                echo $temp->get_content();
            }
        }
      

  3.   

    以上方法可行,谢谢!
    但是通过get_elements_by_tagname方法得到了xml文件中所有的text节点,而不再加以区别.如何判断节点具体的归属呢?举个例子来说:
    <table>
      <th>
        <td></td>
      </th>
      <tr>
        <td></td>
      </tr>
    </table>
    通过get_elements_by_tagname("td")可以得到所有的节点,但是我无从知道td节点是属于th还是tr.那么如何来解决这个问题呢?
      

  4.   

    get_elements_by_tagname("//th/td"); // 属于th的td节点
    get_elements_by_tagname("//tr/td"); // 属于tr的td节点