2024 日本 PHP 研討會

IBM 函數 (PDO_IBM)

簡介

PDO_IBM 是一個驅動程式,它實作了 PHP 資料物件 (PDO) 介面,以便從 PHP 存取 IBM 資料庫。

安裝

要建置 PDO_IBM 擴充功能,必須在與 PHP 相同的系統上安裝 DB2 Client v9.1 或更高版本。可以從 IBM » 應用程式開發網站 下載 DB2 Client。

注意注意

DB2 Client v9.1 或更高版本支援直接存取 DB2 for Linux、UNIX 和 Windows v8 和 v9.1 伺服器。

DB2 Client v9.1 也支援使用另購的 » DB2 Connect 產品 來存取 DB2 UDB for i5 和 DB2 UDB for z/OS 伺服器。

PDO_IBM 是一個 » PECL 擴充套件,因此請按照 PECL 擴充套件的安裝 中的指示安裝 PDO_IBM 擴充套件。發出 configure 指令,指向 DB2 Client 標頭檔和程式庫的位置,如下所示

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
2 年前
使用 PDO_ODBC 搭配 IBM i 本身、Windows、Linux 或 Mac 的 IBM i ODBC 驅動程式連線到 IBM i(本文中稱為「i5」)Db2 通常更簡單,所有這些驅動程式都可免費下載… 詳見 https://www.ibm.com/support/pages/odbc-driver-ibm-i-access-client-solutions
To Top