PHPからMySQLを使用するには、3つ以上の一般的な方法があります。これは、いくつかの機能/相違点の概要を示しています PHP:APIの選択 :
準備済みステートメントでPDOを使用することをお勧めします。これは適切に設計されたAPIであり、必要に応じて別のデータベース( ODBC をサポートするデータベースを含む)に簡単に移動できます。
これらは、MySQLバックエンドにアクセスするための異なるAPIです
したがって、どの種類のコードを作成するかによって異なります。オブジェクト指向のレイヤーまたはプレーン関数を好む場合...
私のアドバイスは
また、私の考えでは、mysql APIはPHP
の将来のリリースでおそらく削除されるでしょう。
3つのAPI機能を比較する table があります。 PDOの後にリリースされた最新のMysqliを可能な限り使用し、将来的にはより適切に保守されます。
具体的には、MySQLi拡張機能は、古いMySQL拡張機能に比べて次の非常に便利な利点を提供します。
OOPインターフェイス(手続き型に加えて)プリペアドステートメントのサポートトランザクション+ストアドプロシージャのサポートより良い構文速度の改善強化されたデバッグ
PDO拡張
PHP Data Objects拡張は、データベース抽象化レイヤーです。特に、これは多くのデータベースエンジン(もちろんMYSQLを含む)のドライバーを提供するため、MySQLインターフェイスではありません。
PDOは、データベースエンジンが変更されたときに、これを反映するコード変更が最小限であることを意味する一貫したAPIを提供することを目的としています。 PDOを使用する場合、使用しているドライバーを変更するだけで、コードは通常、多くのデータベースエンジン間で「機能する」だけです。
PDOは、データベース間の互換性に加えて、MySQLドライバーを使用しながら、準備済みステートメント、ストアドプロシージャなどもサポートします。