不得不自已写一个.XML 的操作一直没有用过.下面是自己搜集的XML操作类 DOMDocument相关的内容. <?xml version="1.0" encoding="utf-8"?> <phplamp> <post> <title id="1">PHP XML处理介绍一</title> <details>详细内容一</details> </post> <post> <title id="2">PHP XML处理介绍二</title> <details>详细内容二</details> </post> <post> <title id="3">PHP XML处理介绍三</title> <details>详细内容三</details> </post> </phplamp> // 首先要建一个DOMDocument对象 $xml = new DOMDocument(); // 加载Xml文件 $xml->load("me.xml"); // 获取所有的post标签 $postDom = $xml->getElementsByTagName("post"); // 循环遍历post标签 foreach($postDom as $post){ // 获取Title标签Node $title = $post->getElementsByTagName("title"); /** * 要获取Title标签的Id属性要分两部走 * 1. 获取title中所有属性的列表也就是$title->item(0)->attributes * 2. 获取title中id的属性,因为其在第一位所以用item(0) * * 小提示: * 若取属性的值可以用item(*)->nodeValue * 若取属性的标签可以用item(*)->nodeName * 若取属性的类型可以用item(*)->nodeType */ echo "Id: " . $title->item(0)->attributes->item(0)->nodeValue . "<br />"; echo "Title: " . $title->item(0)->nodeValue . "<br />"; echo "Details: " . $post->getElementsByTagName("details")->item(0)->nodeValue . "<br /><br />"; }
var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); xmldoc.async = false; var 旧发言 = ""; function getxml(){ try{ xmldoc.load("word.xml"); if(xmldoc.documentElement != null){ var 新发言 = xmldoc.xml; if(新发言 != 旧发言){ 旧发言 = 新发言; var allwords = xmldoc.selectNodes("list/message"); 新发言 = ""; for(var i = 0;i < allwords.length;i++){ var 数组 = allwords[i].text.split("@"); var 作者 = 数组[0]; if(作者 == 用户名.value){ 作者 = "<font color='Turquoise'>"+作者+"</font>"; } else{ 作者 = "<font color='Silver'>"+作者+"</font>"; } var 发言= "<font color='Gold'>"+数组[1]+"</font>"; 新发言 += "<div>"+作者+" "+发言+"</div>" +"<div style='text-align:right;font-size:9px;'>" +allwords[i].getAttribute("author").substring(0,allwords[i].getAttribute("author").lastIndexOf(".")+1) +"* " +allwords[i].getAttribute("time") +"</div>"; } words.innerHTML = 新发言; words.scrollTop = words.scrollHeight; } } } catch(e){ } } var 读取中 = false; function getdata(){ if(!读取中){ 读取中 = true; getxml(); 读取中 = false; } setTimeout("getdata()",3000); } getdata(); submit.onclick = function(){ submit.disabled = true; if(word.value != ""){ var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlHttp.open("GET","save.php?name=" +encodeURIComponent(用户名.value)+ "&word="+encodeURIComponent(word.value), true); xmlHttp.setRequestHeader("Content-Type","text/html; charset=utf-8"); xmlHttp.send(null); word.value = ""; if(!读取中){ 读取中 = true; getxml(); 读取中 = false; } } setTimeout("submit.disabled = false;",3000); word.focus(); } |