php5中使用xslt扩展,PHP5的扩展库

PHP5的扩展库

PHP5的扩展库包括标准库SPL(Standard PHP Library)和外部扩展PECL(PHP Extension Community Library)。标准库即被编译到PHP内部的库。历史上标准库指的是Standard扩展(默认即编译进PHP),但5.0出现后,标准库实际上成了代名词。PHP5新增内置标准扩展库:XML扩展库――DOM,SimpleXML以及ICONV,SQLite等,而类似MySQL、MySQLI、Overload,GD2等这些库则被放在PECL外部扩展库中,需要时在php.ini配置文件中选择加载。

一、XML扩展

在PHP5中,所有的XML扩展已经被全部重写,使用libxml2中的XML工具包(参考网址:

[url]http://www.xmlsoft.org/[/url]),它为PHP的XML操作提供了更多丰富和高可维护性的技术。

在PHP5.1后,上述所有扩展(包括SAX\DOM及XSLT)已经全部集成在PHP软件发行包中,其中包括SimpleXML和SOAP功能。我们可以用PHP5提供对XML的强大处理功能,比如对RSS\Web Service的数据分析、处理等。

1、DOM

DOM全称为Document Object Model,在PHP4版本中,已经使用了libxml2库对DOM的支持,但是存在内存泄漏的Bug,并且该API对W3C也不太兼容。

在PHP5中,DOM扩展已经实现完全支持,不仅是扩展库已经重新写并被集成到PHP,而且对W3C标准全面兼容。

2、SimpleXML

现在PHP开发者在操作使用XML时,又多了一种选择―― SimpleXML,这是PHP5全新开发的外部扩展库,用以替代DOM或较难用的SAX。

SimpleXML将XML文件视为一个PHP对象,可以读写以及重载,而只需要简单的访问元素以及属性就可以了,请看下面的XML文件。

张三

8801872348385371

李四

8801723843291345

下列程序将打印XML文件中的每个客户的名字和帐号

$clients = simplexml_load_file('clients.xml') ;

foreach($clients->client as $client){

echo "$client->name 的账号名称 $client->account_number\n ;

}

?>

3、XML Reader

PHP5引入了新的类XMLReader,用于读取可扩展标记语言(Extensible Markup Language,XML)。与DOM和SimpleXML不同的是,XML Reader以流的模式进行操作,即从头到尾读取文档,在文档后面的内容编译完成之前,可以先处理已编译好的文档前面的内容,从而实现快速、高效、节省的使用内存。

4、SOAP扩展

SOAP协议(Simple Object Access Protocal ,简单对象访问协议)是WEB服务(Web Service)的一种,用以解决异构系统之间的信息传递问题,如PHP与.NET Web Service之间的消息共享,PHP与Java Web Service的互通等。

在PHP5中,已经完全重写了对SOAP支持的扩展库,也不需要再使用Pear SOAP或nusoap类库。下例为调用SomeFunction()的一个WSDL文件。

$client = new SoapClient("someurl.wsdl") ;

$client -> SomeFunction($a , $b , $c) ;

?>

由于SOAP功能被PHP5封装在内部扩展库中,执行速度与效率都比使用外部类库要高,这样能够更容易创建和使用WEB服务。

二、SPL

SPL-Standard Library (PHP标准库)是为解决一些在WEB开发中普遍存在的问题,在PHP5中提供了一系列的接口(interface)和类(class)的类库。

SPL为PHP开发者提供了迭代器(Iterator)、数组对象(ArrayObject)、运行时异常处理(RuntimeException、InvalidArgumentException等)、观察者模式(Observer Parttern)等数据容器与解决方案。

可以使用下面方法查看可用的SPL类。

print_r(spl_class) ;

?>

三、MySQLi扩展

PHP5重新编写了一套新的MySQL数据库扩展库――MySQLi,它提供了新的特性以及针对新版本MySQL5.X的优化功能,这个扩展提供了两个接口,分别用于面向过程的和面向对象,PHP开发者可以任选一种样式进行开发。

MySQLi扩展还支持prepared预执行、变量绑定以及SSL连接支持、数据压缩连接、事务控制等实用的功能和方法。

四、PDO数据库抽象层

PDO(PHP Data Object)是PHP5中新加入的数据库抽象层,直接预装到PHP的扩展中,主要为了解决访问不同数据库统一接口的问题。

PDO类似于数据库抽象层对象驱动(Database Abstraction Layer),如PEAR :: DB类和ADODB数据库抽象类的操作,这给数据库间迁移的通用性和开发程序的易用性带来极大的方便。

如果采用PDO扩展进行WEB开发,可以像使用著名的ADODB、PEAR :: DBS数据库抽象类一样,使用像fetchAll,fetchAssoc等多种方法取得记录集,使程序逻辑更简洁清晰。

由于PDO是底层开发的C代码开发编译,因此执行效率较高,同时也提高了PHP代码层的通用性和可读性,调试起来更加方便。

PDO是随PHP5.1软件包正式分发的,目前已经支持绝大多数的主流数据库系统,如MySQL,Oracle,MS SQL Server等常用的数据库管理系统。

五、JSON扩展

JSON全称为JavaScript Object Notation,是一种非常轻量级的数据交换格式,自PHP5.2起,正式在内部集成JSON功能。

JSON是基于JavaScript Programming Language , Stantard ECMA-262 3rd Edition-Dcember 1999的一个子集,它主要利用了成对的{}来包住各个object(对象),用成对的[ ]来包住各个array(数组),用成对的" "来包住字符串,用逗号来区隔各变量,数据类型有字符串(string),数组(array),对象(object)。

JSON主要用于JavaScript与服务器端脚本的交互。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值