phpのqueryがわかる!データ取得の基本を学ぼう

50種類以上のIT教材を無料で使える!
0円から学習できるオンラインITスクール「侍テラコヤ」
→さっそく登録する

こんにちは!独学プログラマー&ライターのつぶらやです。

phpを始めたばかりの頃、わからなかった事。

それは、

データベースからをデータを取得してくる方法がわからない
queryって文字をよく目にするのだけれどこれが何かわからない。

本日はそんな疑問を解決するための記事を書いていきます。

【基礎】sqlの基本とデータを取得する方法
【基礎】queryとは?
【実践】queryを使ってみよう

サンプルコードをつけていますので、是非ローカル環境などで確認してみてくださいね。

sqlの基本とデータの取得方法

sqlとは、データベースのデータを操作するための言語です。

ここで言う操作とは、更新や削除の事です。

SQLの基礎についてよく理解していない方は、以下の記事を参考にしてください。

SQLとは何か?学ぶメリットや学習方法も解説
更新日:2023年4月29日
では、phpでデータを取得するための準備をしましょう。

テーブルですが、以下の内容とします。

t_usersテーブル

user_id name
1 田中太郎

次にtest.phpを作成してみます。

test.php
<?php
// ↓DB接続のための記述
$new_mysqli = new mysqli('hostの名前', 'データーベースのユーザー名', 'データーベースのパスワード', '使用するデーターベース名');
// ↓変数にsql文を代入
$sql = 'select user_id,name from t_users';

?>

new mysqli()の中身ですが、

hostの名前 → localhostなど
データーベースのユーザー名 → データーベースに作成したユーザー名
データーベースのパスワード → ユーザーを作成する時に設定したパスワード
使用するデーターベース名 → 取得したいテーブルが入っているデーターベース名

を設定してください。

そして$sqlという変数にsqlを代入します。

今回書いたsqlの意味は、

select → 取得してくるという意味です。
user_id,name → 取得してくるカラム名(項目名)です。
from t_users → t_usersテーブルを参照するという事です。

となっています。

さて、準備ができました。

まだプログラムは動きませんので注意です。


【なかなかエラーが解決できない…そんな悩みを解決します!】

登録無料で始められるプログラミングスクール「侍テラコヤ」

・回答率100%のQ&A掲示板でエラーを解決!
現役エンジニアとのオンライン相談で悩みを解決!
・50種類以上の教材で複数言語を習得!

侍テラコヤについて詳しく見る

queryってなぜ必要なの

queryの役割って何でしょうか。

そもそもなぜ必要なのでしょうか。

queryはqueryメソッドなどと呼ばれます。

指定したSQL文をデータベースに対して発行してくれる役割を持っています。

前項でsqlを変数に入れましたが、それだけではデーターベースからデータを取得することはできません。

queryメソッドを使用して、sqlをデータベースに届けなければいけないのです。

queryを使ってみよう

お待たせいたしました!

それではqueryを使用してみましょう。

「sqlの基本とデータの取得方法」で使用したテーブルとtest.phpを使用します。

test.php
<?php
$new_mysqli = new mysqli('hostの名前', 'データーベースのユーザー名', 'データーベースのパスワード', '使用するデーターベース名');

$sql = 'select user_id,name from t_users';

// ↓queryに$sqlを渡す
$result = $new_mysqli->query($sql);

// ↓queryの結果は配列で返ってくるのでforeachで取り出す
foreach($result as $val) {
    echo $val['user_id']. '<br />';
    echo $val['name']. '<br />';
}

?>
実行結果
1
田中太郎
データを取得できました!

今回はわかりやすいように1件のデータで実行してみましたが、複数データあっても同じように取り出すことが出来ます。

ポイントはqueryで取得した値は配列で返ってくる点です。

今回のqueryの実行結果は以下です。

array(
    [0] => 
    array(
        [user_id] => [1],
        [user_id] => ['田中太郎']
    )
)

配列で返ってくるデータはサンプルコードのようにforeachで取り出しましょう。


【何から学べばいいかわからない…そんな悩みを解決します!】

完全無料ですぐわかる「プログラミング学習プラン診断」

・適性にあわせて学習プランを診断
・完全無料で気軽に診断できる
・学習の悩みもまるっと解決

さっそく診断してみる

まとめ

今回はphpのqueryについてお話しました。

データーベースからデータが取得できるようになると、一気に開発の幅が広がります。

ぜひ実際試して確認してみてください。

それでは、また。

プログラミング学習中、
誰かへ相談したいことはありませんか?

SAMURAI TERAKOYA

プログラミングはエラーの連続。作業を進めるなかで誰かに教えてほしい場面は多いですよね。

そんな悩みを解決できるのが、侍テラコヤです。登録無料で始められて、現役エンジニアとオンラインで相談できるほか、回答率100%のQA掲示版でプログラミングに関する悩みを解決します!

気になる方はぜひ詳細をご覧ください。

→侍テラコヤの詳細をみる

独学PG&SE、東京在住30代女性。
誰でもプログラマーになれるがモットーで、わかりやすい記事を目指しています。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI TERAKOYA

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら
Close