예제를 통해 XPath 문자열 함수 및 XSLT에 대한 간략한 분석
XPath(xml Path 언어)는 XML 문서 세그먼트를 처리하는 언어입니다. XSLT(Extensible Stylesheet Language Transformations, Extensible Stylesheet Language Transformations)는 XPath를 사용하여 노드 선택을 제어하기 위한 표현식과 주소 경로를 설명합니다. XSLT는 XML을 HTML이나 기타 형식과 같은 다양한 형식으로 변환할 수 있습니다.
다음은 메일 병합 프로그램을 사용하여 XPath 문자열 기능을 간략하게 설명합니다. 다음 XML 파일에는 데이터가 포함되어 있으며 XSLT 파일에는 이메일 형식의 정의가 포함되어 있습니다. MSXML4.0은 XML 문서에 스타일시트를 적용하여 병합된 전자 메일 텍스트 문서를 생성합니다.
XML 파일 Letter.xml
<?xml version="1.0" encoding="UTF-8"?> <Letter> <Date>July 17, 2002</Date> <To> <FirstName>Vicky</FirstName> <LastName>P</LastName> <Sex>Male</Sex> </To> <Address> <Line1>900 National Pkwy</Line1> <Line2>Suite 105</Line2> <City>Bellevue</City> <State>WA</State> <Zip>98007</Zip> <Country>USA</Country> </Address> <Subject>ESTATE OF JOHN DOE / FILE NO. 12345.6789</Subject> <Text> Please pay the PRoperty taxes as soon as possible. </Text> <Sender> <FirstName>John</FirstName> <LastName>M</LastName> <Title>Sr. Tax Consultant</Title> </Sender> </Letter>
XSLT 스타일시트 문서 Letter.xsl
<?xml version='1.0' encoding="utf-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" indent="yes"/> <xsl:variable name="NL" select="'
'" /> <xsl:variable name="Para" select="concat($NL, $NL)" /> <xsl:template match="/"> <xsl:value-of select="//Date" /> <xsl:value-of select="$Para" /> To, <xsl:value-of select="concat(//To/FirstName, ' ', //To/LastName)" /> <xsl:value-of select="$NL" /> <xsl:value-of select="//Address/Line1" /> <xsl:value-of select="$NL" /> <xsl:value-of select="//Address/Line2" /> <xsl:value-of select="$NL" /> <xsl:value-of select="concat(//Address/City, ' ', //Address/State, ' ', //Address/Zip)" /> <xsl:value-of select="$NL" /> <xsl:value-of select="//Address/Country" /> <xsl:value-of select="$Para" /> Regarding: <xsl:value-of select="//Subject" /> <xsl:value-of select="$NL" /> Dear <xsl:if test="starts-with(//Sex, 'M')">Mr. </xsl:if><xsl:if test="starts-with(//Sex, 'F')">Miss </xsl:if> <xsl:value-of select="concat(//To/FirstName, ' ', //To/LastName)" />, <xsl:value-of select="$Para" /> <xsl:value-of select="//Text" /> <xsl:value-of select="$Para" /> Sincerely, <xsl:value-of select="$Para" /> <xsl:value-of select="concat(//Sender/FirstName, ' ', //Sender/LastName)" /> <xsl:value-of select="$NL" /> <xsl:value-of select="//Sender/Title" /> </xsl:template> </xsl:stylesheet>
위 스타일시트는 연결 및 시작을 보여줍니다. 새 줄을 추가하고 변수를 정의하고 사용합니다.
다음은 프로그램 실행 결과입니다.
1.VC6은 Win32 콘솔 애플리케이션을 생성합니다.
2. stdafx.h에 다음 코드를 추가합니다.
#include <TCHAR.H> #include <stdio.h> #include <time.h> #import "msxml4.dll" // If this import statement fails, you need to install MSXML 4.0 SP1 from: //http://msdn.microsoft.com/downloads/sample.asp?url=/MSDN-FILES/027/001/766/msdncompositedoc.xml #include <msxml2.h> // If this include statement fails, you need to install MSXML 4.0 SP1 SDK from: //http://msdn.microsoft.com/downloads/sample.asp?url=/MSDN-FILES/027/001/766/msdncompositedoc.xml // You also need to add the include file and library search path // to Visual C++'s list of directories (Tools > Options... > Directories). using namespace MSXML2; inline void EVAL_HR( HRESULT _hr ) { if FAILED(_hr) throw(_hr); } #define TEMP_SIZE _MAX_PATH // size of short buffer static _TCHAR szTemp[TEMP_SIZE]; // multipurpose buffer on stack static DWord dwLen;
3. 위 코드는 MSXML4 유형 라이브러리를 도입하고 MSXML 헤더 파일을 포함하며 HRESULT 값을 확인하고 일부 전역 변수를 선언합니다.
4.main 함수:
int main(int argc, char* argv[]) { try { EVAL_HR(CoInitialize(NULL)); // Make sure that MSXML 4.0 is installed if (!isMSXMLInstalled()) return -1; // Make sure that XML and XSL file names are passed // as command line parameters if (argc < 3) // Show proper message here return -1; IXMLDOMDocument2Ptr pXMLDoc = NULL; IXMLDOMDocument2Ptr pXSLDoc = NULL; // Load the XML document if (loadDocument(pXMLDoc, argv[1], true)) { // Load the stylesheet if (loadDocument(pXSLDoc, argv[2], false)) { _ftprintf(stdout, pXMLDoc->transformNode(pXSLDoc)); } else { printMSXMLError(pXSLDoc); } } else { printMSXMLError(pXMLDoc); } } catch(...) {//exception handling } _ftprintf(stdout, "\n\nPress Enter to continue..."); getchar(); CoUninitialize(); return 0; }
5.XML 파일 및 XSLT 스타일시트 파일 이름이 명령줄 매개변수로 애플리케이션에 전달됩니다. 기본 함수는 isMSXMLInstalled를 호출하여 MSXML4.0이 설치되었는지 확인합니다. loadDocument에 대한 다음 두 호출은 먼저 XML 문서를 로드한 다음 XSLT 스타일시트를 로드하는 것입니다. 마지막으로 변환을 위해 변환 노드를 호출합니다.
6. 이 예제의 코드를 다운로드하세요. http://www.perfectxml.com/CPPMSXML/downloads/20020716MailMerge.zip
위 내용은 간략한 분석입니다. 예제와 XSLT 콘텐츠가 포함된 XPath 문자열 함수에 대한 더 많은 관련 콘텐츠를 보려면 PHP 중국어 웹사이트(www.php.cn)에 주목하세요!

핫 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)

뜨거운 주제











XPath는 PHP를 사용하여 XML 데이터로 작업할 때 매우 유용한 도구입니다. XPath는 XML 문서에서 요소를 찾기 위한 언어입니다. 이는 개발자가 XML 문서에서 필요한 데이터를 빠르고 쉽게 추출하는 데 도움이 됩니다. 이 기사에서는 XPath의 기본 개념을 소개하고 PHP에서 XPath를 사용하는 방법을 자세히 설명합니다. XPath를 사용하여 XML 문서에서 데이터를 추출하고 간단한 문서를 작성하는 방법을 보여 드리겠습니다.

웹 기술이 계속 발전함에 따라 웹 페이지의 콘텐츠는 점점 더 복잡해지고 있습니다. 크롤러, 데이터 마이닝 등과 같은 추가 처리 및 분석을 위해 HTML 페이지에서 정보를 추출해야 하는 경우가 많습니다. 이 기사에서는 PHP와 XPath를 사용하여 HTML 콘텐츠를 구문 분석하고 필요한 정보를 빠르고 쉽게 얻는 방법을 소개합니다. PHPSimpleHTMLDOMParserPHPSimpleHTMLDOMParser는 오픈 소스입니다.

PHP용 XSLT 확장은 XML 문서를 HTML, XHTML 또는 XML 형식으로 변환하는 강력한 도구입니다. 이 확장은 W3CXSLT 표준을 기반으로 하며 XML 문서를 빠르게 구문 분석하고 변환할 수 있습니다. 이 기사에서는 PHP가 XSLT 확장을 사용하는 방법에 대해 설명합니다. 1. XSLT 확장을 설치합니다. XSLT 확장을 사용하기 전에 확장이 설치되어 있는지 확인해야 합니다. phpinfo() 함수를 사용하여 볼 수 있습니다. 확장 기능이 설치되어 있지 않으면 PHP에서 구성해야 합니다.

XPath는 XML 및 HTML 문서에서 특정 노드를 쿼리하고 찾는 언어입니다. 경로 표현 언어로서 XPath는 PHP를 포함한 많은 프로그래밍 언어에서 널리 사용됩니다. 이 기사에서는 프로젝트에서 XPath를 쉽게 사용하여 XML 및 HTML 파일을 검색하고 쿼리할 수 있도록 PHPXPath 함수의 사용 방법을 자세히 살펴보겠습니다. XPath란 무엇입니까? XPath는 XML 및 HTML 문서에서 특정 노드를 쿼리하고 찾는 언어입니다.

PHP 확장 XSLT를 사용하여 XML 및 XHTML을 변환하는 방법 개요: 웹 개발에서는 브라우저에 표시하기 위해 XML 파일을 XHTML(또는 HTML) 형식으로 변환해야 하는 경우가 많습니다. PHP는 이 변환 프로세스를 간단하고 효율적으로 만들기 위해 XSLT 확장을 제공합니다. 이 기사에서는 PHP를 사용하여 XSLT를 확장하여 XML을 XHTML로 변환하는 방법을 소개하고 코드 예제를 제공합니다. 1단계: XSLT 확장 설치 및 활성화 시작하기 전에 PHP 환경이 다음과 같은지 확인하세요.

먼저, xPath란 무엇입니까? xPath는 xml에서 정보를 찾는 언어입니다. xPath에는 요소, 속성, 텍스트, 네임스페이스, 처리 지침, 주석 및 문서(루트 노드)의 7가지 요소가 있습니다. XML 문서는 문서 트리로 구문 분석되며 트리의 루트를 문서 노드 또는 루트 노드라고 합니다. 기본 XML 문서의 소스코드이다. 이 XML 소스코드에서 볼 수 있듯이 bookstore는 문서노드(루트노드)이고 book, title, 저자, 연도, 가격은 요소노드이다. book 노드에는 제목, 저자, 연도, 가격이라는 4개의 하위 요소 노드가 있고, 제목 노드에는 au라는 3개의 형제 요소가 있습니다.

최근에는 인터넷의 지속적인 발전과 함께 웹 개발 기술도 지속적으로 업데이트되고 반복되어 왔습니다. 그 중 PHP 언어는 배우기 쉽고 사용하기 쉽고 실행 속도가 빠르며 크로스 플랫폼 특성으로 인해 웹 개발 분야에서 널리 사용됩니다. PHP에서 DOM과 XPath 기술은 웹 애플리케이션을 개발할 때 일반적으로 사용되는 기술입니다. 이 기사에서는 이 두 기술에 대한 기본 지식과 응용 시나리오를 자세히 소개합니다. 1. DOM 기술 DOM(Document Object Model, DocumentObjectModel)은 XML이나 HTM을 처리하는 방식이다.

1.xpath1.1xpath Google을 사용하여 xpath 플러그인을 미리 설치합니다. ctrl+shift+x를 누르면 작은 검은색 상자가 나타나 lxml 라이브러리 pipinstalllxml-ihttps://pypi.douban.com/simple을 설치합니다. lxml.etreefromlxmlimportetreeetree.parse() 로컬 파일 구문 분석 html_tree =etree.parse('XX.html')etree.HTML() 서버 응답 파일 html_tree=etree.HTML(respon
