PHP创建与解析 XML 1 (36),xml36_PHP教程
PHP创建与解析 XML 1 (36),xml36
一.使用SimpleXML操控XML
要处理XML 文件,有两种传统的处理思路:SAX 和DOM。SAX 基于事件触发机制,对XML 文件进行一次扫描,完成要进行的处理;DOM 则将整个XML 文件构造为一棵DOM树,通过对DOM 树的遍历完成处理。这两种方法各有优缺点,SAX 的处理思路相对抽象,DOM 的处理过程相对烦琐,都不很适合新手的入门。PHP5 推出了一套新的XML 处理函数,即SimpleXML。名如其实,SimpleXML 本身小巧精干,只提供了少量的几个方法函数,但用它处理起XML 文件功能却非常强大,操作也非常的简单。
1.创建XML文件
$_xml =<<<<span>xml </span><?xml version=<span>"</span><span>1.0</span><span>"</span> encoding=<span>"</span><span>utf-8</span><span>"</span>?> <root> <version><span>1.0</span></version> <info>xml解析测试</info> <user> <name>张三</name> <url>http:<span>//</span><span>www.ss.com</url></span> <author sex=<span>"</span><span>男</span><span>"</span>>张三</author> </user> <user> <name>宿舍</name> <url>http:<span>//</span><span>www.ss.com</url></span> <author sex=<span>"</span><span>女</span><span>"</span>>谁谁谁</author> </user> <user> <name>电驴</name> <url>http:<span>//</span><span>www.ss.com</url></span> <author sex=<span>"</span><span>男</span><span>"</span>>姓黄的</author> </user> </root><span> xml; $_sxe</span>= <span>new</span> SimpleXMLElement($_xml); <span>//</span><span>创建对象解析xml字符串</span> $_sxe->asXML(<span>'</span><span>test.xml</span><span>'</span>); <span>//</span><span>生成XML文件</span>
2.载入XML文件
$_sxe= simplexml_load_file(<span>"</span><span>test.xml</span><span>"</span>); <span>//</span><span>载入XML文件</span> var_dump($_sxe); <span>//</span><span>输出相关信息</span> print_r($_sxe); <span>//</span><span>输出主要信息</span> Reflection::export(<span>new</span> ReflectionClass($sxe)); <span>//</span><span>用反射查看详情</span>
3.解析XML文件
$_sxe= simplexml_load_file(<span>"</span><span>test.xml</span><span>"</span>); <span>//</span><span>载入XML文件</span> var_dump($_sxe); <span>//</span><span>输出相关信息</span> print_r($_sxe); <span>//</span><span>输出主要信息</span> Reflection::export(<span>new</span> ReflectionClass($_sxe)); <span>//</span><span>用发射查看详情</span> echo $_sxe->asXML();<span>//</span><span>打印整个XML</span>
4.读出XML数据
$_sxe= simplexml_load_file(<span>"</span><span>test.xml</span><span>"</span><span>); </span><span>//</span><span>读取一级节点的值,比如version标签</span> echo $_sxe-><span>version; </span><span>//</span><span>如果有多个,可以设置它的数字下标</span> echo $_sxe->version[<span>2</span><span>]; </span><span>//</span><span>如果想要全部打印出来,可以用遍历</span> <span>foreach</span> ($_sxe->version <span>as</span><span> $_version) { echo </span><span>'</span><span>[</span><span>'</span>.$_version.<span>'</span><span>]</span><span>'</span><span>; } </span><span>//</span><span>访问二级节点的name</span> echo $_sxe->user[<span>1</span>]-><span>name; </span><span>//</span><span>获取所有二级节点的name值</span> <span>foreach</span> ($_sxe->user <span>as</span><span> $_user) { echo </span><span>'</span><span>[</span><span>'</span>.$_user->name.<span>'</span><span>]</span><span>'</span><span>; } </span><span>//</span><span>获取二级节点的标签的属性</span> echo $_sxe->user[<span>1</span>]->author->attributes();
5.使用XPath来获取节点
$_sxe= simplexml_load_file(<span>"</span><span>test.xml</span><span>"</span><span>); </span><span>//</span><span>使用XPath获取节点信息</span> $_version = $_sxe->xpath(<span>'</span><span>/root/version</span><span>'</span><span>); echo $_version[</span><span>1</span><span>]; </span><span>//</span><span>遍历version</span> <span>foreach</span> ($_version <span>as</span><span> $_v) { echo </span><span>'</span><span>[</span><span>'</span>.$_v.<span>'</span><span>]</span><span>'</span><span>; } </span><span>//</span><span>访问二级节点</span> $_user = $_sxe->xpath(<span>'</span><span>/root/user</span><span>'</span><span>); echo $_user[</span><span>2</span>]-><span>name; </span><span>//</span><span>遍历二级节点</span> <span>foreach</span> ($_user <span>as</span><span> $_u) { echo </span><span>'</span><span>[</span><span>'</span>.$_u->name.<span>'</span><span>]</span><span>'</span><span>; } </span><span>//</span><span>访问属性</span> echo $_user[<span>1</span>]->author->attributes();
二.使用DOMDocument操控XML
很多情况下,手工生成标记要求从上到下生成文档,必须保证标签都是完整的,开始和结束标签。尽管借助于一些PHP函数或类可以有所改善,不过PHP还提供了一组更有帮助的内置对象和函数。文档对象模型(Document Object Model,DOM)提供了一个树状结构,能很容易创建和处理标签。
1.DOMDocument解析XML
<span>//</span><span>创建一个DOMDocument()</span> $_doc = <span>new</span><span> DOMDocument(); </span><span>//</span><span>载入xml</span> $_doc->load(<span>'</span><span>test.xml</span><span>'</span><span>); </span><span>//</span><span>取version标签</span> $_version = $_doc->getElementsByTagName(<span>'</span><span>version</span><span>'</span><span>); echo $_version</span>->item(<span>2</span>)-><span>nodeValue; </span><span>//</span><span>遍历version标签</span> <span>foreach</span> ($_version <span>as</span><span> $v) { echo $v</span>-><span>nodeValue; }</span>
2.DOMDocument生成XML
<span>//</span><span>声明xml</span> $_doc = <span>new</span> DOMDocument(<span>'</span><span>1.0</span><span>'</span>,<span>'</span><span>utf-8</span><span>'</span><span>); </span><span>//</span><span>排版格式</span> $_doc->formatOutput = <span>true</span><span>; </span><span>//</span><span>创建一个主标签</span> $_root = $_doc->createElement(<span>'</span><span>root</span><span>'</span><span>); </span><span>//</span><span>创建一个一级标签version</span> $_version = $_doc->createElement(<span>'</span><span>version</span><span>'</span><span>); </span><span>//</span><span>给version标签里赋值</span> $_versionTextNode = $_doc->createTextNode(<span>'</span><span>1.0</span><span>'</span><span>); </span><span>//</span><span>将值放入version标签里</span> $_version-><span>appendChild($_versionTextNode); </span><span>//</span><span>将一级标签version放入root里</span> $_root-><span>appendChild($_version); </span><span>//</span><span>将主标签写入xml</span> $_doc-><span>appendChild($_root); </span><span>//</span><span>生成xml</span> $_doc->save(<span>'</span><span>aaa.xml</span><span>'</span>);

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP에서 int 유형을 문자열로 변환하는 방법에 대한 자세한 설명 PHP 개발에서 int 유형을 문자열 유형으로 변환해야 하는 경우가 종종 있습니다. 이 변환은 다양한 방법으로 수행할 수 있습니다. 이 기사에서는 독자의 이해를 돕기 위해 특정 코드 예제와 함께 몇 가지 일반적인 방법을 자세히 소개합니다. 1. PHP 내장 함수 strval()을 사용하세요. PHP는 다양한 유형의 변수를 문자열 유형으로 변환할 수 있는 내장 함수 strval()을 제공합니다. int형을 string형으로 변환해야 할 때,

제목: Golang에서 문자열이 특정 문자로 끝나는지 확인하는 방법 Go 언어에서는 문자열을 처리할 때 문자열이 특정 문자로 끝나는지 확인해야 하는 경우가 있습니다. 이 기사에서는 Go 언어를 사용하여 이 기능을 구현하는 방법을 소개하고 참조용 코드 예제를 제공합니다. 먼저 Golang에서 문자열이 지정된 문자로 끝나는지 확인하는 방법을 살펴보겠습니다. Golang의 문자열에 포함된 문자는 인덱싱을 통해 얻을 수 있으며, 문자열의 길이는 다음과 같습니다.

1. 먼저 pycharm을 열고 pycharm 홈페이지로 들어갑니다. 2. 그런 다음 새 Python 스크립트를 생성하고 마우스 오른쪽 버튼을 클릭하고 새로 만들기를 클릭한 후 Pythonfile을 클릭합니다. 3. 문자열(코드: s="-")을 입력합니다. 4. 그런 다음 문자열의 기호를 20번 반복해야 합니다(코드: s1=s*20). 5. 인쇄 출력 코드(코드: print(s1))를 입력합니다. 6. 마지막으로 스크립트를 실행하면 하단에 반환 값이 표시됩니다. - 20번 반복됩니다.

Golang에서 문자열이 특정 문자로 시작하는지 확인하는 방법은 무엇입니까? Golang으로 프로그래밍할 때 문자열이 특정 문자로 시작하는지 확인해야 하는 상황에 자주 직면하게 됩니다. 이 요구 사항을 충족하기 위해 Golang의 문자열 패키지에서 제공하는 기능을 사용할 수 있습니다. 다음에는 Golang을 사용하여 문자열이 특정 문자로 시작하는지 확인하는 방법을 구체적인 코드 예제와 함께 자세히 소개하겠습니다. Golang에서는 strings 패키지의 HasPrefix를 사용할 수 있습니다.

Go 언어는 문자열 가로채기를 포함하여 풍부한 문자열 처리 기능을 제공하는 강력하고 유연한 프로그래밍 언어입니다. Go 언어에서는 슬라이스를 사용하여 문자열을 가로챌 수 있습니다. 다음으로 Go 언어에서 문자열을 가로채는 방법을 구체적인 코드 예시와 함께 자세히 소개하겠습니다. 1. 슬라이싱을 사용하여 문자열 가로채기 Go 언어에서는 슬라이싱 표현식을 사용하여 문자열의 일부를 가로챌 수 있습니다. 슬라이스 표현식의 구문은 다음과 같습니다: Slice:=str[start:end]where, s

PHP에서 16진수 문자열을 변환할 때 중국어 문자가 깨지는 문제를 해결하는 방법 PHP 프로그래밍에서 때때로 16진수 문자열을 일반 중국어 문자로 변환해야 하는 상황에 직면합니다. 그러나 이러한 변환 과정에서 때때로 중국어 문자가 깨져 나오는 문제에 직면하게 됩니다. 이 기사에서는 PHP에서 16진수를 문자열로 변환할 때 중국어 문자가 깨지는 문제를 해결하는 방법과 구체적인 코드 예제를 제공합니다. 16진수 변환을 위해서는 hex2bin() 함수를 사용하세요. PHP에 내장된 hex2bin() 함수는 1을 변환할 수 있습니다.

PHP 문자열 일치 팁: 모호한 포함 표현식 방지 PHP 개발에서 문자열 일치는 일반적으로 특정 텍스트 내용을 찾거나 입력 형식을 확인하는 데 사용되는 일반적인 작업입니다. 그러나 일치 정확도를 보장하기 위해 모호한 포함 표현식을 사용하지 말아야 할 경우도 있습니다. 이 기사에서는 PHP에서 문자열 일치를 수행할 때 모호한 포함 표현식을 방지하는 몇 가지 기술을 소개하고 구체적인 코드 예제를 제공합니다. 정확한 일치를 위해 preg_match() 함수를 사용하십시오. PHP에서는 preg_mat를 사용할 수 있습니다.

PHP 문자열 작업: 공백을 효과적으로 제거하는 실용적인 방법 PHP 개발 시 문자열에서 공백을 제거해야 하는 상황에 자주 직면하게 됩니다. 공백을 제거하면 문자열이 더 깔끔해지고 후속 데이터 처리 및 표시가 쉬워집니다. 이 기사에서는 공백을 제거하는 몇 가지 효과적이고 실용적인 방법을 소개하고 구체적인 코드 예제를 첨부합니다. 방법 1: PHP 내장 함수인 Trim()을 사용합니다. PHP 내장 함수인 Trim()을 사용하면 문자열 양쪽 끝의 공백(공백, 탭, 개행 등 포함)을 제거할 수 있어 매우 편리하고 쉽습니다. 사용.
