Developer

【PHP基礎】mysqli関数⑥ SELECT文の発行
2021.02.28
Lv1

【PHP基礎】mysqli関数⑥ SELECT文の発行

SELECT文

■概要

今回はPHPからSELECT文を発行します。
SELECT文についてはこちらを参考にしてください。【SQL入門】SELECT文の基本構文

DBを使用したWEBシステムにおいて、SELECT文は必ず使われているといっても過言ではありません。
つまり、非常に重要ということですね。

具体的には、データを表として表示するような場合や、プルダウンの項目で使用されます。
このサイトでも使われています。

今回は以前作成したmembersテーブルのデータを抽出してみます。
筆者は少しレコードを追加して、以下のようになっています。

■サンプルプログラム

SELECT文はINSERT文やUPDATE文と同様、mysqili_query関数を使用します。

select.php

<?php

    // 接続処理
    $con = mysqli_connect('localhost', 'root', '', 'sample_db');
    if(!$con) {
        die('接続に失敗しました');
    }
    
    // 文字コード
    mysqli_set_charset($con, 'utf8');

    // SQLの発行と出力
    $sql = "SELECT * FROM members";
    $res = mysqli_query($con, $sql);
    while($row = mysqli_fetch_assoc($res)) {
        print_r($row);
        echo '<br>';
    }
    
    // 接続断
    mysqli_close($con);
?>

結果

テーブル内のレコード1つ1つが連想配列になっていることがわかります。
カラムがキーとなっているわけですね。
また、while文を使用していることから、レコードを繰り返しで取得していることが想像できます。

while文1回目 Array ( [id] => 1 [name] => 田中 [age] => 25 [address] => 東京都 )
while文2回目 Array ( [id] => 2 [name] => 佐藤 [age] => 20 [address] => 北海道 )
while文3回目 Array ( [id] => 3 [name] => 山田 [age] => 40 [address] => 沖縄県 )

while文の条件で書かれている$row = mysqli_fetch_assoc($res)については次回詳しく説明しますので、
今はSELECT文の結果は1行ずつwhile文で取得するということを認識しておきましょう。

PHP基礎 連載目次リンク

PHP基礎 連載目次