【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を作るのに使えるかもね!!