PHP 开发人员:充实您的 XML 工具箱
xml
PHP 对 XML 的支持随着 PHP 的流行不断在增强。可以从本文中找出近一打 PHP 开发人员可用的 XML 工具。 工具顾问 Craig Knudsen 还描述了一个从 PHP 内部访问更多 Java 工具的方法。
PHP 对 XML 的支持始于版本 3.06,当时 James Clark 流行的基 于 C 的 expat 语法分析器首次作为 PHP 3 模块集成到了该版本。自那时起,不断地开发了许多用于 XML 的 PHP 模块和类;有关我在最近一次对目前供应工具调查中发现的一些工具的概述,请参阅表格:PHP 开发人员的 XML 工具。
SAX 还是 DOM 语法分析?
PHP 4 的缺省配置包含 expat XML 语法分析器,这是一个 SAX(XML 的简单 API,Simple API for XML)语法分析器。PHP 4 中可使用 DOM(文档对象模型,Document Object Model)API,除非把 PHP 4 程序包配置成可使 用 DOM API(使用 --with-dom 配置选项)或 使用 Windows 的二进制发行版来启动 PHP 4 程序包,否则将不构建它。为了能使用 PHP 的 DOM 模块,需安 装 GNOME XML 库,而且需要使用 PHP 4.0.4 或更新版本。
DOM 和 SAX 使用不同的模式对 XML 进行语法分析。当 SAX 语法分析器遇到一个您 感兴趣的标记时,它将调用一个已指定的回调。而 DOM 却将整个文档装入一个您可以检查和操纵的树结构中。自 版本 4.0.4 起,PHP 的 DOM 模块还支持 XPath。
不是每个人都可以控制服务器环境的,所以重新构建 PHP 可能不可行。值得庆幸的是,还有另一种在 PHP 中使用 DOM 的方法。
为 XML 配置 PHP
Windows 用户将发现下载 PHP 的二进制发行版非常容易。二进制发行版的好处在于已经有人为您做了一部分的工作;您不必另外下载任何代码进行编译,并且它已经内置了许多扩展(包括 DOM 扩展)。
如果使用的不是 Windows,则可能需要从源代码构建 PHP。缺省时, PHP 最新发行版将自动包含基于 expat (SAX) 的 XML 支持。如果要在程序包中包含 DOM 支持,则必须将 PHP 程序包配置成能处理 DOM。有关如何从源代码构 建 PHP 的详细信息,请查看参考资料。同时,请牢记 在运行 PHP 的 configure 脚本时需要将 --with-dom 作为一个选项添加进去。
PHP 中的 DOM 支持仍然处于实验阶段(自版本 4.0.5 起),这意味 该 API 会在今后的版本中作更改。
使用 XSLT
PHP 4 还添加了 XSLT 功能。(XSLT 允许您将 XML 文档变换为其它格式,如 PDF 或 HTML 格式的文档,并且还允许您做更多程序上的更改。)PHP 4 中的 XSLT 模块可同时使用 expat 和 Sabloton。 在构建 PHP 之前,必须先下载并安装 Sabloton(见参考资料), 并且必须在 PHP 程序包配置期间使用 --with-sablot 选项。
Web 服务
如果您对使用 PHP 开发 Web 服务感兴趣,可以根据自己的需要 使用 SOAP 或 XML-RPC。SOAPx4 软件包同时提供了用 PHP 编写的客户机和服务器。对于 XML-RPC,可以从多种 XML-RPC 实现中选择一个, 包括 Useful Information 公司开发的很好的一个。
SOAP 和 XML-RPC 实现全部都是用 PHP 编写的。 如果您的服务器为 PHP 启用了 XML 支持(缺省情况),则不需要对服务器 作任何修改。
PHP 之外的选择
如果一直无法为要使用的工具找到 PHP 接口,还有另外一个选择:Java。虽然 PHP 的 XML 工具列表在不断扩大,但 JAVA 中仍然有更多可用的 XML 工具。PHP 4 包含了对访问 Java 对象的支持,这使 PHP 开发人员 可以使用各种 Java XML 工具。
虽然 PHP 的 Java 支持并非是全新的,但要找出如何安装与 使用 Java 模块的指示信息仍要费一番工夫。PHP 手册中没有这些指示信息。但是,您可以 查看 PHP 发行版 ext/java 目录下的“自述文件”了解介绍安装和使用的文档。切记,安装过程 对每个 Java 实现而言都存在少许差异。
PHP 开发人员的 XML 工具
语法分析器:
PHP XML 基于 SAX 的语法分析器,它根据 Jim Clark 的 expat 构建在 PHP 内。
PHP DOM 构建在 PHP 中的 DOM 支持,它需要 Sabloton。
phpDOM phpDOM 为 PHP DOM 模块提供了一个 PHP4 类封装器。
PRAX PRAX 是 RAX 的一种 PHP 实现,SAX 的替代。
协议:
SOAPx4 Dietrich Ayala 开发的 SOAP 客户机和服务器实现
PHP 的 SOAP 客 户机和服务器 Giga Ideas 开发的 SOAP 客户机和服务器实现
PHP 的 XML-PRC 客 户机和服务器/td> Useful Information 公司开发的 XML-RPC 客户机和服务器实现
eZ xmlrpc/td> XML-RPC 的客户机和服务器实现
Hail Stone XML-RPC 服务器
XMLRPC-EPI 这是一个用起来简单快捷的基于 C 的 PHP 模块,实现了客户机和服务器 XML-RPC。
参考资料
您对 PHP 工具有什么意见吗?请通过单击文章顶部或底部的讨论,可参加与本文相关的论坛。
可以从 PHP 下载页面下载 PHP 的源代码 或 Windows 的二进制发行版。
文档对象模型 (DOM) 提供了一个标准对象集,用于表示 HTML 和 XML 文档,并提供了一个标准的接口,用于访问和操纵这些文档。
XML 路径语言 (XPath) 是 一种 XSLT 和 XPointer 都能使用的,用于定位 XML 文档中某些部分的的语言。
XML 的简单 API (SAX) 是对基于事件的 XML 进行语法分析的一个标准接口。
XML 面向记录 的 API (RAX) 是两个主流 API(SAX 和 DOM)的替代项。
工业强度 亦或泡沫?对 SOAP、RPC 和 RMI 进行了剖析。
XML-RPC 允许在各不相同的操作系统中、在不同环境下运行的软件在整个 Internet 上进行过程调用。
使用 PHP 脚本 语言快速编写 Web 数据库脚本包含了从源代码构建 PHP 的逐步 指示信息,并介绍了构建数据库驱动的 PHP 应用程序。
为了在从源代码构建 PHP 时启用 DOM 支持,需安装 Gnome 的 XML C 库。
为了使用 PHP 的 XSLT 模 块,在构建 PHP 之前必须安装 Sabloton。
PHP 手册包含了有关使用基 于 expat 的 XML 功能、DOM XML 功能和 XSLT 功 能的文档。
PHPBuilder 的 PHP & Java 介绍了如何安装和使用 PHP Java 模块。
PHP-XML 邮件列表由 O'Reilly Network 掌管。
请在“DB2 开发者园地”里 Dan Scott 所著的文章中查找 如何 编 译 PHP 使其成为带 DB2 支持的动态装入的 Apache 模块。
可以仔细查看以下联机教程以了解使用 PHP 和 XML 的代码示例。
PHPBuilder 有一些有关对 XML 进行语法分析的佳作,包括使 用 expat 功能和 DOM XML:expat 的替代项。
phpWizard.net 中有一篇标题为 使 用 PHP 对 XML 进行语法分析的好文章。
PHP Everywhere 有关于使 用 XML-RPC 的教程。
可从 Linux.com 上获取 有关使用 XML-RPC 的简单示例。
Solutions 2001 开发人员大会将于 8 月 13 日至 18 日在旧金山召开; 请在 AgendaBuilder 中搜索或浏览 230 多个会议的描述。有两打以上的会议聚集中于 XML 及其相关技术,包括:
实践: 将 XML 与 DB2 集成
实践: Voice XML 工具/构建绝佳应用程序
XSL 示例: XML 变换简介
使 用 Java 技术对 XML 文档进行语法分析和编程。
请参加内含 17 个有关开发习惯问题的调查,以便帮助 IBM 改进用于开发软件应用程序的 XML 工具和服务。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。
