xsl初识

来源:互联网 发布:怎么加入淘宝安装门店 编辑:程序博客网 时间:2024/06/13 03:29

1、xsl转换

文件:*.Xsl

运行:和htm/xml一样,对浏览器无太多的要求

内容:html标记、模板

功能:把xml文档通过模板转换成html文档

1)与css比较:

       Css不能重新排序文档中的元素

       Css不能判断和控制每个元素是否被显示

       Css不能统计元素中的数据

 

2)使用:

定义:将xml文档作为原料利用<xsl:value-of select="name(自定义的标签名)"/>输入到xsl模板里转换成html文档

      

2、实例新建:

       创建一个xsl   XML tylesheet v1.0   或者xslt   XMLT tylesheet v1.0

       选择 生成xsl/xslt变换

 

转换步骤:

       第一步:创建模板

       处理元素列表

1、<xsl:template match="contactinfo(也可以是标记也可以是规定地范围)">为输出定义一个处理规则

              Math:声明范围

       2、<xsl:value-of select="name"/>插入被选择节点的值到输出文档

              Select=”被选择标签的名称”

       3、<xsl:apply-templates></……>指导xsl处理器选择一个基于某个匹配的内容

       4、<xsl: for-each></…..>:  对select属性指定的节点集合中的子节点循环执行

       5、<xsl:attribute></….>:在新增文件的元素中,动态的增加属性;

       6、<xsl:chosse>:   类似switch

              <xsl:when>:    类似case(满足一个具体条件的时候)

              <xsl:otherwise>:类似default

       7<xsl:if>:  简单条件判断

。。。。。。。。。。。。。。。。。。。。。。。

创建完保存:*.xsl

在xsl.xsl文件上点击(F10)选择被转换的xml文件—确定

1)              

 

<?xmlversion="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html>

       <head>

              <title>xsl的转换</title>

       </head>

       <body>

                     <p>显示的数据</p>

       </body>

</html>

</xsl:template>

</xsl:stylesheet>

 

 

</xsl:template>

<xsl:template match="/">   以这两个标记中的格式把math=”**”限定的内容进行显示

 

             

Php应用程序使用xml

1)、simpleXML

2)、DOM树(父节点,子节点,叶节点)

Htdocs目录下

 

 

1、  Phpxml文档,fopen

2、 $str=<<<XML         XML可以随意起名为任何但是后面不允许有空格

结束标志XML;前面也不允许有任何的空格;

$xmlstr =<<<XML(开始)

Xml内容。。。。。。。。。

XML;  (结束)

 

3、 使用xml文档用php获取xml信息

1) 将一个带有xml字符串的php文件转换成xml文件

利用内置类SimpleXMLElement创建对象

利用new构造方法(将要转换成xml文档的字符串变量当做实参)

$_sx = new SimpleXMLElement($xmlstr);

调用该对象自己的成员方法(asXML)进行xml文档的生成

asXML("转换成功后自动在当前的目录下创建了一个XML(simple.xml)文档")该文档把XML -----XML;中的所有内容进行输出;

$_sx->asXML("simple.xml");

2) 用php内置函数将xml文件转换成一个对象

用php本身自带的函数simplexml_load_file将xml文件形成一个数组,并且可以获取xml的信息

载入xml文档

simple_load_file("要加载的文件名"),返回一个对象;  如果有重复的标签则会保存成为数组数组的每个元素还会是每一个对象;

3) 利用对象的层次关系选取对象的信息

读取一级节点(就是元素,标记)

对象->节点名

获取文档信息当节点本身构成数组时获取数据信息就需要使用下标了

获取标签的属性信息  attributes();

$xml->movie->rating[0]->attributes();

 

 

 


原创粉丝点击