実行時設定

php.ini の設定により動作が変化します。

MySQLi 設定オプション
名前デフォルト変更可能変更履歴
mysqli.allow_local_infile"0"INI_SYSTEMPHP 7.2.16, 7.3.3 より前のバージョンでは デフォルト値は "1" でした。
mysqli.local_infile_directory INI_SYSTEMPHP 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_socketNULLINI_ALL 
mysqli.default_hostNULLINI_ALL 
mysqli.default_userNULLINI_ALL 
mysqli.default_pwNULLINI_ALL 
mysqli.reconnect"0"INI_SYSTEMPHP 8.2.0 で削除されました。
mysqli.rollback_on_cached_plink"0"INI_SYSTEM 

これらの INI_* 定数の詳細と定義については、 設定の変更 を参照ください。

以下に設定ディレクティブに関する 簡単な説明を示します。

mysqli.allow_local_infileint

PHP 側から、LOAD DATA 文によるローカルファイルへのアクセスを許可する。

mysqli.local_infile_directorystring

LOCAL DATA 文によるファイルのロードを、 ここで指定したディレクトリに制限する機能を有効にします。

mysqli.allow_persistentint

mysqli_connect() による持続的接続の作成機能を有効にします。

mysqli.max_persistentint

作成できる持続的接続の最大数。0 を設定すると無制限となります。

プロセス毎の MySQL 接続の最大数。

mysqli.default_portint

他のポートが指定されない場合、データベースサーバー接続時に使用される デフォルトの TCP ポート番号。デフォルトが指定されない場合は、 環境変数 MYSQL_TCP_PORT/etc/servicesmysql-tcpエントリ・コンパイル時の MYSQL_PORT 定数の順番でポートが取得されます。 Win32 では、MYSQL_PORT 定数のみが使用されます。

mysqli.default_socketstring

他にソケット名が指定されない場合、ローカルな データベースサーバーに接続する時のデフォルトのソケット名。

mysqli.default_hoststring

他のサーバー名が指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのサーバー名。

mysqli.default_userstring

他のユーザー名が指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのユーザー名。

mysqli.default_passwordstring

他のパスワードが指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのパスワード。

mysqli.reconnectint

接続が失われたときに自動的に再接続するかどうか。

注意: mysqlnd ドライバは、この php.ini 設定項目を無視していました。 そして、PHP 8.2.0 で削除されました。

このオプションを有効にすると、接続を閉じて時持続的接続プールに接続を戻す前に、 この接続で保留中だったあらゆるトランザクションがロールバックされます。 このオプションが無効だった場合、接続が再利用されるとき、または実際に閉じられるときだけ、 保留中のトランザクションがロールバックされます。

MYSQL_OPT_READ_TIMEOUT を、 API コールや実行時の設定で指定することはできません。 もしそんなことができてしまうと、libmysqlclient とストリームで MYSQL_OPT_READ_TIMEOUT の値の解釈する方法が違ってしまう可能性があることに注意しましょう。

To Top