共计 2405 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | XML 文件是类似 HTML 文件的纯文本文件。XML 能够通过标准的 Web 服务器轻松地存储和生成。 |
在服务器上存储 XML 文件
XML 文件在 Internet 服务器上进行存储的方式与 HTML 文件完全相同。
启动 Windows 记事本,并写入以下行:
<note> | |
<from>Jani</from> | |
<to>Tove</to> | |
<message>Remember me this weekend</message> | |
</note> |
然后用适当的文件名,比如 “note.xml”,在 Web 服务器上保存这个文件。
通过 ASP 生成 XML
XML 可在不安装任何 XML 软件的情况下在服务器端生成。
如需从服务器生成 XML 响应 – 只需简单地编写以下代码并在 Web 服务器上把它保存为一个 ASP 文件:
<% | |
response.ContentType="text/xml" | |
response.Write(" | ")|
response.Write("<note>") | |
response.Write("<from>Jani</from>") | |
response.Write("<to>Tove</to>") | |
response.Write("<message>Remember me this weekend</message>") | |
response.Write("</note>") | |
%> |
请注意,此响应的内容类型必须设置为 “text/xml”。
通过 PHP 生成 XML
如需使用 PHP 从服务器上生成 XML 响应,请使用下面的代码:
header("Content-type: text/xml"); | |
echo "<?xml version='1.0'encoding='ISO-8859-1'?>"; | |
echo "<note>"; | |
echo "<from>Jani</from>"; | |
echo "<to>Tove</to>"; | |
echo "<message>Remember me this weekend</message>"; | |
echo "</note>"; | |
请注意,响应头部的内容类型必须设置为 “text/xml”。
从数据库生成 XML
XML 可在不安装任何 XML 软件的情况下从数据库生成。
如需从服务器生成 XML 数据库响应,只需简单地编写以下代码,并把它在 Web 服务器上保存为 ASP 文件:
<% | |
response.ContentType = "text/xml" | |
set conn=Server.CreateObject("ADODB.Connection") | |
conn.provider="Microsoft.Jet.OLEDB.4.0;" | |
conn.open server.mappath("/db/database.mdb") | |
sql="select fname,lname from tblGuestBook" | |
set rs=Conn.Execute(sql) | |
response.write("<?xml version='1.0'encoding='ISO-8859-1'?>") | |
response.write("<guestbook>") | |
while (not rs.EOF) | |
response.write("<guest>") | |
response.write("<fname>" & rs("fname") & "</fname>") | |
response.write("<lname>" & rs("lname") & "</lname>") | |
response.write("</guest>") | |
rs.MoveNext() | |
wend | |
rs.close() | |
conn.close() | |
response.write("</guestbook>") | |
%> |
上面的实例使用了带有 ADO 的 ASP。
在服务器上通过 XSLT 转换 XML
下面的 ASP 代码在服务器上把 XML 文件转换为 XHTML:
<% | |
'Load XML | |
set xml = Server.CreateObject("Microsoft.XMLDOM") | |
xml.async = false | |
xml.load(Server.MapPath("simple.xml")) | |
'Load XSL | |
set xsl = Server.CreateObject("Microsoft.XMLDOM") | |
xsl.async = false | |
xsl.load(Server.MapPath("simple.xsl")) | |
'Transform file | |
Response.Write(xml.transformNode(xsl)) | |
%> |
实例解释
- 第一个代码块创建微软 XML 解析器的实例(XMLDOM),并把 XML 文件载入内存。
- 第二个代码块创建解析器的另一个实例,并把 XSL 文件载入内存。
- 最后一个代码使用 XSL 文档来转换 XML 文档,并把结果以 XHTML 发送到您的浏览器。
通过 ASP 把 XML 保存为文件
这个 ASP 实例会创建一个简单的 XML 文档,并把该文档保存到服务器上:
<% | |
text="<note>" | |
text=text & "<to>Tove</to>" | |
text=text & "<from>Jani</from>" | |
text=text & "<heading>Reminder</heading>" | |
text=text & "<body>Don't forget me this weekend!</body>"text=text &"</note>"set xmlDoc=Server.CreateObject("Microsoft.XMLDOM") | |
xmlDoc.async=false | |
xmlDoc.loadXML(text) | |
xmlDoc.Save("test.xml") | |
%> |
正文完
星哥玩云-微信公众号
