使用 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
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]
這些函式的行為會受到 php.ini 中設定的影響。
名稱 | 預設值 | 可變更性 | 變更紀錄 |
---|---|---|---|
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 |
以下是設定指示的簡短說明。
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 文件。
使用 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