『ネットオウルユーザーコミュニティ』の提供に伴い、『Q&A掲示板』は2025年3月31日正午をもって提供を終了します。[関連ニュース]

メンバーメニュー

ようこそ、ゲストさん

トップ > カテゴリ一覧 > ネットオウル > PHPのPDOでDB接続解除をする方法

質問

  • PHPのPDOでDB接続解除をする方法
  • 本文:

    今PHPのPDOでDB接続のテストをしているのですが、DB接続解除をするにはPDOクラスのオブジェクトをnullに設定すればよろしいのでしょうか?

    コードは以下のとおりでよろしいでしょうか?
    例外処理でfinallyのとこでPDOクラスのオブジェクトを破棄するようにしているのですが?

    try
    {
    /* データベース接続処理 */
    /* (PDOクラスのインスタンス生成)*/
    $pdo = new PDO($dsn, $user, $pass, array(PDO::ATTR_EMULATE_PREPARES => false));
      }
    catch (PDOException $e)
    {
    /* 例外発生(接続失敗) */
    /* メッセージ表示 */
    $mes = "データベース接続に失敗しました。";
    print("<p>".$mes."".$e->getMessage()."</p>\n");
    }
    finally
    {
    /* データベース接続解除処理 */
    $pdo = null;
    /* メッセージ表示 */
    $mes = "データベース接続を解除しました。";
    print("<p>".$mes."</p>\n");
    }

  • 緊急度:急ぎ投稿者:og0131さん投稿時間:2017/04/21 06:57
質問に対する回答は締め切られました

回答 No.5967

  • この回答がベストアンサーです

  • 本文:

    >>
    この PDO オブジェクトが存在する間、 接続がアクティブであり続けます。接続を閉じるには、他から 参照されていないことを保障することでオブジェクトを破棄する 必要があります。それには、オブジェクトを保持している変数に対して NULL を代入します。

    明示的にこれを行わなかった場合は、スクリプトの終了時に自動的に 接続が閉じられます。

    http://php.net/manual/ja/pdo.connections.php
    <<

  • 投稿者:k-tanさん 投稿時間:2017/04/21 07:46
質問者からのコメント

素早い回答有難うございます。
NULLを設定してもしなくても接続は解除されるんですね。良く分かりました。

回答 No.6031

  • 本文:

    平素はネットオウルをご利用いただき誠にありがとうございます。
    ネットオウル運営チームです。

    本ご質問は一定期間新たな回答がなかったため
    運営チームで締め切らせていただきました。


    ■質問の締め切りについて

    Q&A掲示板はユーザー様同士の交流掲示板です。
    回答がもらえた場合、回答者へお礼コメントをしましょう。

    問題が解決した際にはベストアンサーを選び、
    質問を締め切ってください。


    ■再度のご質問について

    ご質問が未解決の場合、「ワンポイント!」を参考に、
    再度質問してみてください。

    【ワンポイント!】

     メールやFTPの設定がうまくいかない場合、
     ネットオウルIDやサーバーIDなどのお客様情報を公開しない範囲で、
     現在の設定内容を出来るだけ詳しく書いてみましょう。
     設定内容のミスを指摘してもらえるかもしれません。

     エラーが出てうまくいかない場合、
     エラーメッセージの内容を書いてみましょう。
     エラーメッセージにはエラー原因が詳しく書かれていることが多く、
     問題の解決につながる回答が得られるかもしれません。


    ■ベストアンサーについて

    ご質問の締め切りに際して、運営チームにて
    ベストアンサーを選んでおります。

     ※ベストアンサーの回答者様には通常と同様のポイントが
      付与されています。


    --ネットオウル運営チーム--

  • 投稿者:ネットオウル運営 投稿時間:2017/05/10 10:59