XXIdbx 関数

導入

dbx モジュールは、データベース抽象化レイヤ (db 'X'、ただし 'X' は サポートされるデータベースの一つを意味します)のことです。dbx 関数 により、サポートされる全てのデータベースを単一の呼出表記によりアク セスすることが可能になります。dbx 関数自体は、データベースへの直 接のインターフェイスを有しませんが、それらのデータベースをサポート するために使用されるモジュールへのインターフェイスを有します。

要件

dbxモジュールでデータベースを使用可能とするには、そのモジュールが PHPにリンクされるかロードされる必要があり、そのデータベースのモ ジュールは、dbxモジュールにサポートされている必要があります。現在、 以下のデータベースがサポートされていますが、他のデータベースも追 加される予定です。

dbxにデータベースのサポートを追加するためのドキュメントは、 http://www.guidance.nl/php/dbx/doc/にあります。

インストール手順

これらの関数を利用可能にするには、 --enable-dbx オプションを使用して dbxサポートを有効にし、また、使用するデータベースに関するオプション、 例えば、MySQL の場合は --with-mysql=[DIR] も指定して PHPをコンパイルする必要があります。 dbxモジュールで他のサポートされるデータベースを動作させるには、指定 したドキュメントを参照して下さい。

実行用の設定

これらの関数の動作は、php.iniの設定により変化します。

表 1DBX設定オプション

名前デフォルト変更の可否
dbx.colnames_case"unchanged"PHP_INI_SYSTEM
PHP_INI_* 定数に関する詳細と定義については、 ini_set()を参照して下さい。

注意 iniオプションは、PHP 4.3.0から利用可能です。

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

dbx.colnames_case string

カラム名は、変更されず("unchanged"の場合)に返すか、大文字 ("uppercase"の場合)または小文字("lowercase"の場合)に変換すること ができます。このディレクティブは、dbx_query() のフラグで上書きすることが可能です。

リソース型

dbxモジュールでは2種類のリソース型があります。最初のリソースは、 データベース接続用のリンク-objectで、2番目はクエリ結 果を保持するための結果-object です。

定義済みの定数

これらの定数は、この拡張モジュールで定義されており、 この拡張モジュールがPHP内部にコンパイルされているか実行時に動的にロー ドされるかのどちらかの場合のみ使用可能です。

DBX_MYSQL (integer)

DBX_ODBC (integer)

DBX_PGSQL (integer)

DBX_MSSQL (integer)

DBX_FBSQL (integer)

DBX_OCI8 (integer) (available from PHP 4.3.0)

DBX_SYBASECT (integer)

DBX_PERSISTENT (integer)

DBX_RESULT_INFO (integer)

DBX_RESULT_INDEX (integer)

DBX_RESULT_ASSOC (integer)

DBX_COLNAMES_UNCHANGED (integer) (available from PHP 4.3.0)

DBX_COLNAMES_UPPERCASE (integer) (available from PHP 4.3.0)

DBX_COLNAMES_LOWERCASE (integer) (available from PHP 4.3.0)

DBX_CMP_NATIVE (integer)

DBX_CMP_TEXT (integer)

DBX_CMP_NUMBER (integer)

DBX_CMP_ASC (integer)

DBX_CMP_DESC (integer)

目次
dbx_close -- オープンされた接続/データベースを閉じる
dbx_compare --  ソートするために二つのレコードを比較する
dbx_connect -- 接続/データベースをオープンする
dbx_error --  (接続時だけでなく)使用するモジュールの最新の関数コールにおけるエ ラーメッセージを出力する
dbx_escape_string --  Escape a string so it can safely be used in an sql-statement.
dbx_query -- クエリを送信し、(ある場合には)結果を全て取得する
dbx_sort --  カスタマイズされたsort関数により、dbx_queryから結果をソートする