IBM 函数 (PDO_IBM)

简介

PDO_IBM 驱动程序实现了 PHP 数据对象 (PDO) 接口,以便从 PHP 访问 IBM 数据库。

安装

要构建 PDO_IBM 扩展,必须在与 PHP 相同的系统上安装 DB2 客户端 v9.1 或更高版本。可以从 IBM » 应用程序开发站点 下载 DB2 客户端。

注意: 注意

DB2 客户端 v9.1 或更高版本支持直接访问 DB2 for Linux、UNIX 和 Windows v8 和 v9.1 服务器。

DB2 客户端 v9.1 还支持使用单独购买的 » DB2 Connect 产品 访问 DB2 UDB for i5 和 DB2 UDB for z/OS 服务器。

PDO_IBM 是一个 » PECL 扩展,因此请按照 安装 PECL 扩展 中的说明安装 PDO_IBM 扩展。发出 configure 命令以指向 DB2 客户端头文件和库的位置,如下所示

bash$ ./configure --with-pdo-ibm=/path/to/sqllib[,shared]
configure 命令默认为 DB2DIR 环境变量的值。

运行时配置

这些函数的行为受 php.ini 中设置的影响。

PDO_IBM 配置选项
名称 默认值 可更改 变更日志
pdo_ibm.i5_dbcs_alloc "0" INI_SYSTEM 在 PDO_IBM 1.5.0 中添加
pdo_ibm.i5_override_ccsid "0" INI_SYSTEM 在 PDO_IBM 1.5.0 中添加
有关 INI_* 模式更详细的信息和定义,请参阅 配置设置可以在哪里设置

以下是配置指令的简要说明。

pdo_ibm.i5_dbcs_alloc int

此选项会影响 IBM i 上的内部缓冲区分配策略。默认情况下,此选项为 0。当设置此选项时,缓冲区将以更大的尺寸分配,以防在编码之间转换时,数据库对字符大小进行误导。此选项将使用六倍的内存用于缓冲区(以适应最大的 UTF-8 序列),但如果返回截断的数据,则可能需要它。

  • 0 - 分配最小尺寸缓冲区。

  • 1 - 分配较大尺寸缓冲区。

pdo_ibm.i5_override_ccsid int

在 IBM i 上从 EBCDIC 转换时使用的 ASCII CCSID。将其设置为 1208 将使用 UTF-8。默认情况下,此值为 0,这将选择默认的 ASCII 作业 CCSID。

要详细了解 IBM i 上的 CCSID,请查阅 » IBM 文档

目录

添加注释

用户贡献的注释 1 则注释

jwoehr at softwoehr dot com
1 年前
连接到 IBM i(在文章中称为“i5”)Db2 通常使用 PDO_ODBC 和 IBM i 本身的 IBM i ODBC 驱动程序更简单,Windows、Linux 或 Mac 都可以免费下载……请参阅 https://www.ibm.com/support/pages/odbc-driver-ibm-i-access-client-solutions
To Top