PHPのお勉強!

PHP TOP

実行時設定

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

ibm_db2 設定オプション
名前 デフォルト 変更可能 変更履歴
ibm_db2.binmode "1" INI_ALL  
ibm_db2.i5_all_pconnect "0" INI_SYSTEM ibm_db2 1.6.5 以降で利用可能
ibm_db2.i5_allow_commit "0" INI_SYSTEM ibm_db2 1.4.9 以降で利用可能
ibm_db2.i5_blank_userid "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_char_trim "0" INI_SYSTEM ibm_db2 2.1.0 以降で利用可能
ibm_db2.i5_dbcs_alloc "0" INI_SYSTEM ibm_db2 1.5.0 以降で利用可能
ibm_db2.i5_guard_profile "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_ignore_userid "0" INI_SYSTEM ibm_db2 1.8.0 以降で利用可能
ibm_db2.i5_job_sort "0" INI_SYSTEM ibm_db2 1.8.4 以降で利用可能
ibm_db2.i5_log_verbose "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_max_pconnect "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_override_ccsid "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_servermode_subsystem NULL INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.i5_sys_naming "0" INI_SYSTEM ibm_db2 1.9.7 以降で利用可能
ibm_db2.instance_name NULL INI_SYSTEM ibm_db2 1.0.2 以降で利用可能

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

ibm_db2.binmode int

このオプションは、バイナリデータを PHP アプリケーションで 使用する際のモードを制御します。

  • 1 (DB2_BINARY)

  • 2 (DB2_CONVERT)

  • 3 (DB2_PASSTHRU)

ibm_db2.i5_all_pconnect int

このオプションは、IBM i 上での接続を強制的にすべて持続的接続にします。 基本的に、すべての db2_connect() 関数のコールは透過的に db2_pconnect() のコールになります。 デフォルトでは、このオプションの値は 0 です。 このオプションは、持続的接続が高速な場合のために便宜上提供されています。 新しいアプリケーションでは、このオプションを使うべきではありません。

  • 0 - 持続的接続、およびそうでない接続の両方を作成できます

  • 1 - すべての接続を持続的接続にします

ibm_db2.i5_allow_commit int

このオプションは、トランザクションの分離レベルを制御します。 デフォルトでは、このオプションの値は 0 です。 よって、コミットの制御は使いません。 このオプションは、配列のキー i5_commit を接続オプションの配列に設定し、 db2_connect()db2_pconnect() に渡すことで上書きできます。

  • 0 - コミット制御を使いません。

  • 1 - read uncommitted。ダーティリードの可能性があります。

  • 2 - read committed。ダーティリードは発生しません。

  • 3 - repeatable read。ダーティリードや非再現リードは発生しません。

  • 4 - serializeable。ダーティリードや非再現リードやファントムリードは発生しません。

ibm_db2.i5_blank_userid int

IBM i 上で空のユーザーIDを許可すべきかどうかを制御します。 デフォルトでは、このオプションの値は 0 です。 ibm_db2.i5_ignore_userid と異なり、 このオプションはすべてのユーザーIDを強制的に空にしたり、 ジョブの振る舞いを変えたりはしません。 ただ単に、Db2 に現在のユーザーとしてする際、 空のユーザーIDを渡すことを許可するだけです。

  • 0 - ユーザーIDを空で渡すことを許可しません

  • 1 - ユーザーIDを空で渡すことを許可します。

ibm_db2.i5_char_trim int

このオプションは、IBM i における文字列の右端をトリム処理するかを制御します。 多くのテーブルは固定のカラムサイズを持ち、スペースで埋められているため、 このオプションが便宜のため提供されています。 デフォルトでは、このオプションの値は 0 です。

  • 0 - カラムの値はトリム処理されません。

  • 1 - 返される文字カラムの右端のスペースが削除されます。

ibm_db2.i5_dbcs_alloc int

This options affects the internal buffer allocation strategy on IBM i. By default, this option is 0. When this option is set, buffers are allocated with a much larger size, in case the database underestimates a string's size when converting between encodings. This option uses six times as much memory for buffers (to account for the largest possible UTF-8 sequences), but may be needed if truncated data is returned.

  • 0 - Minimum size buffers are allocated.

  • 1 - Larger size buffers are allocated.

ibm_db2.i5_guard_profile int

IBM i 上のデータベースに持続的接続する際、 ユーザーのデータベースのプロファイルを切り替えるかどうかをチェックします。 切り替える場合、データベースから切断します。 デフォルトでは、このオプションの値は 0 です。

  • 0 - プロファイルの切換をチェックしません

  • 1 - プロファイルの切換をチェックし、切り替える場合は切断します

ibm_db2.i5_log_verbose int

This option sets if SQL diagnostic messages like warnings and errors are always sent to the PHP error log on IBM i. Normally, only a brief message on failure is sent (such as "statement execute failed") to the PHP error log, as this option is set to 0 by default. Note that you can still and should call i.e. db2_stmt_errormsg() manually as part of checking if functions fail.

  • 0 - Only logs brief messages.

  • 1 - Logs the SQL diagnostic message in addition to the brief message.

ibm_db2.i5_ignore_userid int

IBM i 上で実行される際、かつデータベースに接続する際に、 このオプションはユーザーID を無視します。 また、別々のジョブではなく、PHPジョブの内部でSQL/CLI の機能を実行します。 デフォルトでは、このオプションの値は 0 です。 このオプションを有効にすると、 別々のデータベースサーバーのジョブを使わず、 常に現在のユーザープロファイルを使います。 そして、db2_connect()db2_pconnect() に渡されるユーザー名とパスワードを無視します。

  • 0 - 指定されたクレデンシャルを使い、SQL/CLI サーバーのジョブを使います。

  • 1 - 常に空のクレデンシャルを使い、PHP のジョブ中でSQL/CLI ジョブを実行します

ibm_db2.i5_job_sort int

IBM i におけるジョブソートを制御します。 デフォルトでは、このオプションの値は 0 です。 これは IBM i SQL/CLI の SQL_ATTR_CONN_SORT_SEQUENCE 属性に対応します。

  • 0 - *HEX ソートオプションを使い、 バイト単位でソートを行います。

  • 1 - PHP のジョブ向けにジョブソートのシーケンスを使います。

  • 2 - データベースのジョブ向けにジョブソートのシーケンスを使います。