PHP Conference Japan 2024

執行時期設定

這些函式的行為受 php.ini 中的設定影響。

MySQLi 設定選項
名稱 預設值 可變更性 變更紀錄
mysqli.allow_local_infile "0" INI_SYSTEM 在 PHP 7.2.16 和 7.3.3 之前,預設值為「1」。
mysqli.local_infile_directory   INI_SYSTEM PHP 8.1.0 起可用。
mysqli.allow_persistent "1" INI_SYSTEM  
mysqli.max_persistent "-1" INI_SYSTEM  
mysqli.max_links "-1" INI_SYSTEM  
mysqli.default_port "3306" INI_ALL  
mysqli.default_socket NULL INI_ALL  
mysqli.default_host NULL INI_ALL  
mysqli.default_user NULL INI_ALL  
mysqli.default_pw NULL INI_ALL  
mysqli.reconnect "0" INI_SYSTEM 自 PHP 8.2.0 起移除
mysqli.rollback_on_cached_plink "0" INI_SYSTEM  

更多關於前面 INI_* 常數的細節與定義,請參閱設定變更的章節。

以下是設定指令的簡短說明。

mysqli.allow_local_infile 整數

允許從 PHP 的角度使用 LOAD DATA 語句存取本地檔案。

mysqli.local_infile_directory 字串

允許將 LOCAL DATA 載入限制在此指定目錄中的檔案。

mysqli.allow_persistent 整數

啟用使用 mysqli_connect() 建立持續連線的功能。

mysqli.max_persistent 整數

可建立的持續連線的最大數量。設為 0 表示無限制。

每個行程的 MySQL 連線最大數量。

mysqli.default_port 整數

連線到資料庫伺服器時,若未指定其他連接埠,則使用的預設 TCP 連接埠號。如果未指定預設值,將會依序從 MYSQL_TCP_PORT 環境變數、/etc/services 中的 mysql-tcp 項目或編譯時期的 MYSQL_PORT 常數取得連接埠。Win32 只會使用 MYSQL_PORT 常數。

mysqli.default_socket 字串

連線到本地資料庫伺服器時,若未指定其他通訊端名稱,則使用的預設通訊端名稱。

mysqli.default_host 字串

連線到資料庫伺服器時,若未指定其他主機,則使用的預設伺服器主機。

mysqli.default_user 字串

連線到資料庫伺服器時,若未指定其他名稱,則使用的預設使用者名稱。

mysqli.default_pw 字串

連線到資料庫伺服器時,若未指定其他密碼,則使用的預設密碼。

mysqli.reconnect 整數

如果連線中斷,則自動重新連線。

注意這個 php.ini 設定已被 mysqlnd 驅動程式忽略,並已於 PHP 8.2.0 中移除。

如果啟用此選項,關閉持續連線將會在連線放回持續連線池之前,復原此連線的任何待處理交易。否則,待處理交易只會在連線被重新使用或實際關閉時才會復原。

使用者無法透過 API 呼叫或執行時期設定來設定 MYSQL_OPT_READ_TIMEOUT。請注意,如果可以這樣設定,libmysqlclient 和串流對 MYSQL_OPT_READ_TIMEOUT 值的解讀方式將會有所不同。

新增註釋

使用者貢獻的註釋

此頁面沒有使用者貢獻的註釋。
To Top