設定オプション --enable-dba=shared を使用することにより、dbm 形式のデータベースをサポートする動的に ロード可能なモジュールを有効にして PHP を構築することができます。 また、PHP の configure 行に設定スイッチ --with-XXXX を指定することにより、少なくとも以下のハンドラの一つのサポートを 追加する必要があります。
PHP の configuring とコンパイルを済ませたら、コマンドラインから次の テストを実行する必要があります: php run-tests.php ext/dba これは、指定したハンドラの組み合わせが動作するかどうかを調べます。 いちばん問題のあるのは dbm と ndbm の組み合わせで、これらは多くの場合何らかの衝突を引き起こします。 その原因は、いくつかのシステムではこれらのライブラリが他のライブラリの 一部となっていることで。configure 時のテストでは個々のハンドラについての 設定不備は調べられますが、それらの組み合わせについてはテストできません。
ハンドラ | configure のスイッチ |
---|---|
dbm |
dbm のサポートを有効にするには、
--with-dbm[=DIR] を追加します。
|
ndbm |
ndbm のサポートを有効にするには、
--with-ndbm[=DIR] を追加します。
|
gdbm | gdbm のサポートを有効にするには、 --with-gdbm[=DIR] を追加します。 |
db2 |
db2 のサポートを有効にするには、
--with-db2[=DIR] を追加します。
|
db3 |
db3 のサポートを有効にするには、
--with-db3[=DIR] を追加します。
|
db4 |
db4 のサポートを有効にするには、
--with-db4[=DIR] を追加します。
|
cdb |
cdb のサポートを有効にするには、
--with-cdb[=DIR] を追加します。
|
flatfile |
flatfile のサポートを有効にするには、
--with-flatfile を追加します。
|
inifile |
inifile のサポートを有効にするには、
--with-inifile を追加します。
|
qdbm |
qdbm のサポートを有効にするには、
--with-qdbm[=DIR] を追加します。
|
注意: PHP 4.3.0 までは、db2 および db3 ハンドラの両方を追加することが できましたが、内部的に使用できるのは片方だけでした。 これは、両方のファイル形式を使用することができないことを意味します。 PHP 5.0.0 以降、このような設定ミスを回避するよう設定の確認が行われます。