PHPでデータベースに接続する方法

PHP

今回はPHPを使ってデータベースに接続する方法です。

データベースはMySQLで、接続方法にはPDOクラスを使います。PDO以外にも接続方法があるみたいですが、調べるとだいたいこのPDOが載っているのでこちらを使用します。

//DSNをセット。ここに「host=ホスト名、dbname=データベース名、charset=文字コード」を入力します。
$dsn = 'mysql:host=【ホスト名】;dbname=【Database名】;charset=utf8';
//データベースに接続するユーザー
$user = 'xxxx';
//データベースに接続するパスワード
$password = 'xxxxxxxx';
//接続
$pdo = new PDO($dsn, $user,$password);

最後の$pdo = new PDOの括弧に中に全部書いても良いですが見通しをよくするため変数に入れています。

参考ページ

ただデータベースの接続には例外(SQLの構文エラーなど)が発生することがあるので、例外処理をするのが一般的なようです。

例外処理

例外処理は以下のように記述します。

try {
  /* 処理 */
} catch(Exception $e) {
  /* tryの中で例外があった場合の処理 */
}

これを先ほどのデータベース接続と合わせると以下になります。

$dsn = 'mysql:host=【ホスト名】;dbname=【Database名】;charset=utf8';
$user = 'xxxx';
$password = 'xxxxxxxx';
try {
  $pdo = new PDO($dsn, $user,$password);
  echo "接続!";
  /* データベースの処理などをここに記述 */
} catch(Exception $e) {
  echo $e->getMessage(); //例外があった時はこちらの処理(今回はエラー文)を実行
}