php5 を設定する場合、データベースとして mysql を使用する必要があります。なぜ多くの記事で extension=php_mysqli.dll; コマンドを追加するだけで十分だと考えていますか。
最新の公式 PHP マニュアルを確認してください。そこには次のように書かれています:
以下は組み込み拡張ライブラリのリストです:
PHP 5 (5.0.4 時点) には次の変更があります。新しい組み込み: DOM、LibXML、Iconv、SimpleXML、SPL、SQLite。 MySQL と Overload は組み込まれなくなりました。
php5 にはこれらの拡張ライブラリが組み込まれていないことがわかりました (もちろん、php4 を使用する場合、これらの命令を追加する必要はないと結論付けることができます)。なぜ php5 が mysql のクライアント ライブラリをバインドしなくなったのかについてです。 、マニュアルには次のようにも説明されています:
理由の一部は (順不同):
。現在のほとんどのシステムにはクライアント ライブラリがインストールされています。
。上記の理由により、ライブラリ ファイルの複数のバージョンを維持すると混乱が生じる可能性があります。たとえば、mod_auth_mysql をあるバージョンに接続し、PHP を別のバージョンに接続し、両方を Apache でアクティブ化すると、多数のエラーが発生します。さらに、バンドルされたライブラリはサーバー側のバージョンと常に適切に連携するとは限りません。この最も明らかな症状は、UNIX ドメイン ソケット ファイル mysql.socket がどこにあるかということです。
。メンテナンスはやや緩く、リリースされたバージョンからはどんどん遅れています。
。ライブラリの将来のバージョンは GPL ベースになるため、BSD/Apache スタイルのライセンスを持つプロジェクトに GPL ベースのライブラリを結び付けることができないため、アップグレードする方法がありません。したがって、クリーンな PHP 5 を使用することが最良の選択肢です。
設定中に php に対して 2 つの拡張ライブラリがアクティブ化される理由は次のとおりです:
。基本的な関数操作を使用して MySQL データベース サーバーにアクセスするには、PHP の構成時に MySQL サポートを追加する必要があります。つまり、php_mysql.dll 拡張ライブラリを使用します。
。 php_mysql.dll 拡張ライブラリは mysql 4.1.0 以降のマシン バージョンと互換性がありますが、これらのバージョンで提供される追加関数はサポートされていません。これらの関数を使用するには、php_mysqli.dll 拡張ライブラリも使用する必要があります。
PHP 4 (PHP 4.3.11 以降): BCMath、Caledar、COM、Ctype、FTP、MySQL、ODBC、オーバーロード、PCRE、セッション、トークナイザー、WDDX、XML、Zlib。
上記は、phpini に extension=php_mysqlidll 命令を追加するための extension_dir の手順を紹介しており、extension_dir の内容も含めて、PHP チュートリアルに興味のある友人に役立つことを願っています。