Maison >développement back-end >tutoriel php >Méthode d'instance d'opération XML en php

Méthode d'instance d'opération XML en php

小云云
小云云original
2018-03-10 11:25:491213parcourir


Xml est principalement utilisé pour stocker des données. Cet article analyse principalement les exemples de méthodes d'opération XML en PHP, dans l'espoir d'aider tout le monde.

Texte

Cas de démarrage

<?xml version="1.0" encoding="utf-8" ?><stu><name>draymonder</name></stu>

Traitement des caractères spéciaux

<imgs><![CDATA[$<$$#@>]]></imgs>CDATA的基本语法<![CDATA[内容]]>面试题: 如何使用xml文件来传递,保存一个图片
答: 使用程序先读入到内存
然后保存到xml的<![CDATA[文件内容]]>中

Instructions de traitement XML PI

通过PI指令来引入CSS样式文件:

PI指令的弊端:
    只对英文的标签起作用,对中文的标签不起作用。 

//和html引用css大同小异<?xml-stylesheet  type="text/css" href="txt.css"?>  //txt.css内容
name{
    background-color:red;
}

age{
    background-color:green;
}

dtd (Définition du type de document

Afin de contraindre les fichiers XML et de rendre la sémantique XML légale
explication détaillée de dtd

基本语法
<!ELEMENT 元素名 类型> //元素约束<!ATTLIST 元素名> //属性约束<!ENTITY 元素名 "引用内容"> //用元素名来表示引用的内容

Démarrage rapide de phpDom

$xmldoc = new DomDocument();$xmldoc->load("test.xml");//读文件的时候用load方法//读字符串的时候用 loadXML方法 //eg: $xmldoc->loadXML(&#39;<root><node/></root>&#39;);//找到root节点$nodeLists=$xmldoc->getElementsByTagName("stu"); //返回的是结果集合 $nodeList = $nodeLists->item(0); 
//上面直接就已经找到root节点了//新增name节点$node_name = $xmldoc->createElement("name");$node_name->nodeValue = "我喜欢你";//新增age节点$node_age = $xmldoc->createElement("age");$node_age->nodeValue = "20";//root节点下挂载 name节点和age节点$root->appendChild($node_name); 
$root->appendChild($node_age);//内存中修改完毕以后 还要保存文件内容$xmldoc->save("test.xml");//删除操作$test->parentNode->removeChild($test);//更新操作找到那个需要修改的节点 直接改 nodeValue属性就可以//设置属性setAttribute (string $name ,string $value) 
添加属性为$name 属性值$value的属性

La technologie xpath

php dom peut être appliquée à travers les couches, mais elle ne peut pas maintenir de relations hiérarchiques. Elle peut être résolue en utilisant xpath

这种技术相当于是知道节点所在的层级,然后通过层级关系来找相应的节点$xmldoc = new DOMDocument();$xmldoc->load("test.xml");$xpath = new DOMXPath($xmldoc);$node_list = $xpath->query("/stu");
echo $node_list->length;

SimpleXML

Exploitation de fichiers XML. de manière orientée objet

//装载文件$stu = simplexml_load_file("test.xml");$name  = $stu->name;

var_dump($name);foreach ($name as $value) {    echo "$value <br>";
}//还有装载方式从DOM对象simplexml_import_dom//装载字符串simplexml_load_string

Le problème de l'ouverture des hyperliens de manière unifiée

<head>
    <base target="_blank"></head>

Recommandations associées :

Exemple de code détaillant le fonctionnement XML résumé

Instance de classe encapsulée par opération XML de PHP (lecture)

Classe d'opération XML implémentée par PHP [Bibliothèque XML]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn