PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

WBOY
リリース: 2023-04-10 18:50:02
オリジナル
5746 人が閲覧しました

前回の記事では「PHPデータベース学習でクエリ結果の行数を取得する方法は?」をお届けしました。 」では、PHP データベースのクエリ結果の行数を取得する方法を詳しく紹介しています。この記事では、PHP における PDO の関連知識を見てみましょう。みんなが助けてくれることを願っています!

PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

PHP データベース学習に関する前回の記事では、PHP の mysqli クラスに関する関連知識をいくつか紹介しましたが、その中で、mysqli がサポートできるのは MySQL データベースのみであることがわかっています。今回は他のデータベースに接続できないので、どうすれば他のデータベースに接続できるのでしょうか?どういう手段で?現時点では、PHP に別のデータベース関連クラス、つまり PDO クラスを導入する必要があります。次に見てみましょう。

PDOとは

PDOとはPHP Data Objectの略で、正確にはPDOの定義です。 PHP アクセス データベースの提供する同じ機能を通じてクエリを実行し、データを取得できるインターフェイス。このインターフェイスは軽量で一貫性があり、使用しているデータベースに関係なく、同じ関数を通じてアクセスして実行できます。このような操作によりデータベースの操作が大幅に簡素化され、データベース内のさまざまな違いに基づいて変更を加える必要がなくなります。

この場合、PDO を使用すると、 mysqli_* の一連の関数を使用する必要がなくなり、PDO 内のメソッドを使用してデータベースを操作するだけで済みます。

PDO は、さまざまなデータベースのアクセス インターフェイスを統合するために機能する「データベース アクセス抽象化レイヤー」と考えることができます。 PDO は、軽量で明確で便利な機能を通じてさまざまなデータベースの共通機能を統合し、PHP スクリプトの最大限の抽象化と互換性を実現します。

PDO 拡張機能はモジュール式であり、PHP プログラム全体を再コンパイルまたは再インストールすることなく、実行時にユーザー データベース バックエンドのドライバーを読み込むことができます。

PDO を有効にする方法

デフォルトでは、PHP では PDO が有効になっていますが、特定のデータベース用のドライバーを必要に応じて変更する必要があります。開始しても、対応する開く操作を実行する必要があります。

Windows を例として、php.ini 構成ファイルで PDO の関連構成情報を見つけてみましょう:

PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

Among対応する構成を有効にするには、構成項目の前にあるセミコロン ; を削除し、Apache サーバーを再起動するだけです。

設定が完了したら、phpinfo() を使用して、正常に開かれたかどうかを確認できます。例は次のとおりです:

<?php
phpinfo();
?>
ログイン後にコピー

次の結果が得られます。出力結果:

PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

したがって、php.ini 設定ファイルを介して PDO を開いたので、PDO が開かれたので、次のように接続します。次に、PHP で PDO を使用してデータベースに接続する方法を見てみましょう。

#PHP は PDO を使用してデータベースに接続します

#PHP は PDO を使用してデータベースに接続し、さまざまなデータと対話したいと考えています現時点では、PDO オブジェクトのメンバー メソッドは、さまざまなデータベースと対話するという目的を達成するために、さまざまなデータベースのアクセス インターフェイスと一致します。したがって、PDO を使用してデータベースと対話する前に、まず PDO オブジェクトを作成し、次にオブジェクトのコンストラクターを通じてデータベースに接続する必要があります。このコンストラクターの構文形式は次のとおりです。

PDO::__construct(string $dsn[, string $username [, string $password [, array $driver_options]]])
ログイン後にコピー

次の点に注意してください:

  • $dsn は を表します。データ ソース 名前 (DSN) には、データベースへの接続に要求される情報が含まれます。通常、DSN は PDO ドライバーの名前とそれに続くコロン、およびオプションでドライバーのデータベース接続情報で構成されます。

  • #$username は、DSN 文字列内のユーザー名を表すために使用されるオプションのパラメータを表します。 #$password は、DSN 文字列内のパスワードを表すために使用されるオプションのパラメータを表します。

  • $driver_options は、オプションのパラメータ、特定のドライバのキー/値を表します接続オプションの配列。

  • PDO オブジェクトを作成するには、さまざまな方法でコンストラクター メソッドを呼び出すことができます。コンストラクター メソッドを呼び出すさまざまな方法を紹介するために、MySQL データベースへの接続を例に挙げてみましょう。 例は次のとおりです:

  • <?php
    /* 通过调用驱动程序创建一个PDO实例 */
    $dsn = &#39;mysql:dbname=testdb;host=127.0.0.1&#39;;
    $user = &#39;dbuser&#39;;
    $password = &#39;dbpass&#39;;
    try {
        $dbh = new PDO($dsn, $user, $password);
    } catch (PDOException $e) {
        echo &#39;Connection failed: &#39; . $e->getMessage();
    }
    ?>
    ログイン後にコピー

    上述示例中,将参数嵌入到构造函数中,在 DSN 字符串中加载 mysql 驱动程序并指定了两个可选参数:第一个是数据库名称,第二个是数据库地址。其他的驱动程序会同样以不同的方式解释它的 DSN,如果无法加载驱动程序,或者发生了连接失败,则会抛出一个 PDOException,以便可以决定如何最好地处理该故障。

    其中的参数也可以储存在一个本地或者远程的文件中,然后在构造函数中引用这一文件,示例如下:

    首先在本地的文件中创建一个dsn.txt的文件,其中的内容和路径如下:

    PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

    PHP データベースの学習: PDO を使用してデータベースに接続する方法は?

    然后输入示例如下:

    <?php
        $dsn  = &#39;C:\Users\Administrator\Desktop\1.0\1028\dsn.txt&#39;;
        $user = &#39;root&#39;;
        $pwd  = &#39;root&#39;;
        try{
            $obj = new PDO($dsn,$user,$pwd);
        }catch(PDOException $e){
            echo &#39;数据库连接失败:&#39;.$e -> getMessage();
        }
    ?>
    ログイン後にコピー

    由此我们便通过吧擦书储存在文件里,然后通过构造函数完成了数据库的调用。

    大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

    以上がPHP データベースの学習: PDO を使用してデータベースに接続する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート