【PHP】PDOを使ってデータベース(MySQL)にアクセスする

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【PHP】PDOを使ってデータベース(MySQL)にアクセスする

2022-10-7 | ,

PHPでPDOを使ってデータベース(MySQL)にアクセスしたい!

概要

この記事では、PHPでPDOを使ってデータベース(MySQL)にアクセスする手順を掲載する。

仕様書

環境

  • PHP 8.0.17
  • MariaDB 15.1

手順書

下記のようなテーブルをPODでSELECTして、該当のレコードの件数とレコードの内容を出力してみる。

id[int] name[varchar(256)] value[int] inserted_at[datetime]
1 speed 1398 2022-09-26 10:18:15
2 stamina 743 2022-09-26 10:18:15
3 power 972 2022-09-26 10:43:06
4 guts 764 2022-09-26 10:43:06
5 intelligence 632 2022-09-26 10:44:12

PHPのコード。

<?php
try {
    $dsn = "mysql:host=<host_name>; dbname=<db_name>; charset=utf8";
    $user = '<user_name>';
    $password = '<password>';

    $dbh = new PDO($dsn, $user, $password);
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $query = 'select id, name, value, inserted_at from table_test_items';
    $stmt = $dbh->prepare($query);
    $result_q = $stmt->execute();

    echo $stmt->rowCount(). "件<br /><br />";

    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
    foreach ($result as $row) {
        echo $row['id']. '<br />';
        echo $row['name'];
        echo $row['vaule']. '<br />';
        echo $row['inserted_at']. '<br />';
    }

} catch (PDOException $e) {
    echo $e->getMessage() . "\n";
    exit();
}
?>

<host_name>は、サーバーのホストネームに置き換える。(例えば、localhostとかIPアドレスとか)

<db_name>は、データベースの名前に置き換える。

<user_name>は、データベースの接続に使うユーザー名に置き換える。

<password>は、データベースの接続に使うユーザーのパスワードに置き換える。

まとめ(感想文)

簡単なWEB APIを作るのに使えるかもね!!