DOMDocument related content.
Attributes:
Attributes The attribute list of the storage node (read-only)
childNodes The list of child nodes of the storage node (read-only)
dataType Returns the data type of this node
Definition The definition of the node given in DTD or XML mode (read-only)
Doctype Specifies the document type node (read-only)
documentElement Returns the root element of the document (readable and writable) )
firstChild returns the first child node of the current node (read-only)
Implementation returns the XMLDOMImplementation object
lastChild returns the last child node of the current node (read-only)
nextSibling returns the next one of the current node Sibling node (read-only)
nodeName returns the name of the node (read-only)
nodeType returns the type of the node (read-only)
nodeTypedValue stores the node value (readable and writable)
nodeValue returns the text of the node (Readable and writable)
ownerDocument Returns the root document containing this node (read-only)
parentNode Returns the parent node (read-only)
Parsed Returns whether this node and its child nodes have been parsed (read-only)
Prefix Returns the namespace prefix (read-only)
preserveWhiteSpace Specifies whether to keep the blank space (readable and writable)
previousSibling Returns the previous sibling node of this node (read-only)
Text Returns this node and its The text content of the descendants (readable and writable)
url Returns the URL of the recently loaded XML document (read-only)
Xml Returns the XML representation of the node and its descendants (read-only)
Method:
appendChild adds a new child node to the current node and places it after the last child node
cloneNode returns a copy of the current node
createAttribute creates a new attribute
createCDATASection creates a CDATA segment including the given data
createComment creates a comment node
createDocumentFragment creates a DocumentFragment object
createElement creates an element node
createEntityReference creates an EntityReference object
createNode creates a given type, name and Namespace node
createPorcessingInstruction Creates an operation instruction node
createTextNode Creates a text node including the given data
getElementsByTagName Returns a collection of elements with the specified name
hasChildNodes Returns whether the current node has child nodes
insertBefore Insert a child node before the specified node
Load Import the XML document at the specified location
loadXML Import the XML document of the specified string
removeChild Delete the specified child node from the child node list
replaceChild From the child node list Replace the specified child node in
Save Save the XML file to the specified node
selectNodes Perform the specified match on the node and return the matching node list
selectSingleNode Perform the specified match on the node and return the first match Node
transformNode uses the specified style sheet to transform the node and its descendants
transformNodeToObject uses the specified style sheet to transform the node and its descendants
Instance gets the label attribute. Value:
Me.xml
<?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 />"; }
The following is the code for js to read the xml file ajax+xml message
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(); }
For more articles related to PHP XML operation class DOMDocument, please pay attention to the PHP Chinese website!

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi

PHPisusedforsendingemailsduetoitsbuilt-inmail()functionandsupportivelibrarieslikePHPMailerandSwiftMailer.1)Usethemail()functionforbasicemails,butithaslimitations.2)EmployPHPMailerforadvancedfeatureslikeHTMLemailsandattachments.3)Improvedeliverability

PHP performance bottlenecks can be solved through the following steps: 1) Use Xdebug or Blackfire for performance analysis to find out the problem; 2) Optimize database queries and use caches, such as APCu; 3) Use efficient functions such as array_filter to optimize array operations; 4) Configure OPcache for bytecode cache; 5) Optimize the front-end, such as reducing HTTP requests and optimizing pictures; 6) Continuously monitor and optimize performance. Through these methods, the performance of PHP applications can be significantly improved.

DependencyInjection(DI)inPHPisadesignpatternthatmanagesandreducesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itallowspassingdependencieslikedatabaseconnectionstoclassesasparameters,facilitatingeasiertestingandscalability.

CachingimprovesPHPperformancebystoringresultsofcomputationsorqueriesforquickretrieval,reducingserverloadandenhancingresponsetimes.Effectivestrategiesinclude:1)Opcodecaching,whichstorescompiledPHPscriptsinmemorytoskipcompilation;2)DatacachingusingMemc


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

Zend Studio 13.0.1
Powerful PHP integrated development environment

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
