一个重要的免责声明开始的:
警告:该扩展是试验性的(EXPERIMENTAL)。本扩展的行为,包括关于本扩展的函数名和其他内容,在以后的 PHP 版本中随时可能改变,不另行通知。使用该扩展的风险自负。
警告看起来有点让人担心,但实际上这个扩展似乎得到了很好的支持。和任何新代码一样,该扩展也存在缺陷,但是报告的问题通常很快就能得到修正。在 PHP 站点上可以看到缺陷列表。我们估计,在将来的 PHP 版本中,该扩展将从试验性功能转为主流功能。
安装 PHP SOAP 扩展
应该在 Web 服务器上安装并运行 PHP 5。我们的实验采用 PHP 5.0.2,这是现在最新的版本,修正了 PHP 5 初始版本中的很多错误。上面已经提到,ext/soap 是作为 PHP 5 的一部分提供的,因此不需要单独下载,但是您可能需要对它做一些修改来启用它。需要做哪些修改则取决于您是下载源代码,自己编译 PHP,还是直接下载二进制文件。
如果下载的是 PHP 源代码,并在自己的平台上编译,那么可能需要重新进行构建,因为在默认情况下没有启用 ext/soap。重复以前的构建过程,并在 configure 命令中添加 --enable-soap 选项。
如果下载的是预编译平台的二进制文件,ext/soap 可能已经编译但没有加载,因此需要更新 PHP 配置,以便加载 ext/soap。编辑 php.ini 并找到 Dynamic Extensions 部分,在这里增加一行代码来自动加载该扩展。
在 Windows 上,这一代码行是:
extension=php_soap.dll
在 UNIX 上是:
extension=php_soap.so
如果以前没有加载过任何可选的扩展,可能还要设置 extension_dir 指令,让它指向包含扩展库(其中包括 php_soap)的目录,比如:
extension_dir="C:/php/ext/"(在 Windows 上使用正斜杠)
不要将目录信息放到 extension 指令中,需要的话可以使用 extension_dir。
对于 Windows,可以下载其他两个二进制包。Windows 安装程序包不含任何扩展,因此要使用 Windows zip 压缩包,这个压缩包中包含 ext/soap。
注意,ext/soap 依赖于 GNOME xml 库,这个库必须使用 2.5.4 或更高版本。如果版本不够高,可以从 xmlsoft安装 libxml2。
最后,ext/soap 在 php.ini 中有自己的配置部分,在完成配置之后,ext/soap 如下所示:
[soap]
; Enables or disables WSDL caching feature.
soap.wsdl_cache_enabled=1
; Sets the directory name where SOAP extension will put cache files.
soap.wsdl_cache_dir="/tmp"
; (time to live) Sets the number of second while cached file will be used
; instead of original one.
soap.wsdl_cache_ttl=86400
警告:该扩展是试验性的(EXPERIMENTAL)。本扩展的行为,包括关于本扩展的函数名和其他内容,在以后的 PHP 版本中随时可能改变,不另行通知。使用该扩展的风险自负。
警告看起来有点让人担心,但实际上这个扩展似乎得到了很好的支持。和任何新代码一样,该扩展也存在缺陷,但是报告的问题通常很快就能得到修正。在 PHP 站点上可以看到缺陷列表。我们估计,在将来的 PHP 版本中,该扩展将从试验性功能转为主流功能。
安装 PHP SOAP 扩展
应该在 Web 服务器上安装并运行 PHP 5。我们的实验采用 PHP 5.0.2,这是现在最新的版本,修正了 PHP 5 初始版本中的很多错误。上面已经提到,ext/soap 是作为 PHP 5 的一部分提供的,因此不需要单独下载,但是您可能需要对它做一些修改来启用它。需要做哪些修改则取决于您是下载源代码,自己编译 PHP,还是直接下载二进制文件。
如果下载的是 PHP 源代码,并在自己的平台上编译,那么可能需要重新进行构建,因为在默认情况下没有启用 ext/soap。重复以前的构建过程,并在 configure 命令中添加 --enable-soap 选项。
如果下载的是预编译平台的二进制文件,ext/soap 可能已经编译但没有加载,因此需要更新 PHP 配置,以便加载 ext/soap。编辑 php.ini 并找到 Dynamic Extensions 部分,在这里增加一行代码来自动加载该扩展。
在 Windows 上,这一代码行是:
extension=php_soap.dll
在 UNIX 上是:
extension=php_soap.so
如果以前没有加载过任何可选的扩展,可能还要设置 extension_dir 指令,让它指向包含扩展库(其中包括 php_soap)的目录,比如:
extension_dir="C:/php/ext/"(在 Windows 上使用正斜杠)
不要将目录信息放到 extension 指令中,需要的话可以使用 extension_dir。
对于 Windows,可以下载其他两个二进制包。Windows 安装程序包不含任何扩展,因此要使用 Windows zip 压缩包,这个压缩包中包含 ext/soap。
注意,ext/soap 依赖于 GNOME xml 库,这个库必须使用 2.5.4 或更高版本。如果版本不够高,可以从 xmlsoft安装 libxml2。
最后,ext/soap 在 php.ini 中有自己的配置部分,在完成配置之后,ext/soap 如下所示:
[soap]
; Enables or disables WSDL caching feature.
soap.wsdl_cache_enabled=1
; Sets the directory name where SOAP extension will put cache files.
soap.wsdl_cache_dir="/tmp"
; (time to live) Sets the number of second while cached file will be used
; instead of original one.
soap.wsdl_cache_ttl=86400
| 对此文章发表了评论 |
