【PHP8.x】queryメソッドの使い方

queryメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

SQLite3::queryメソッドは、SQLiteデータベースに対してSQLクエリを実行するメソッドです。

このメソッドは、指定されたSQL文をデータベースに送り、その実行結果を扱います。主にSELECT文のように、データベースからデータを取り出す際に使用されますが、データの追加(INSERT)、更新(UPDATE)、削除(DELETE)を行うSQL文も実行できます。例えば、商品の一覧を取得したり、新しいユーザー情報を登録したりする際に利用できます。

queryメソッドにSQLクエリ文字列を渡して実行すると、成功した場合はSQLite3Resultという特別なオブジェクトが返されます。このSQLite3Resultオブジェクトを通じて、取得したデータを行ごとに読み進めたり、各列の値を取り出したりすることができます。これにより、データベースから取得した情報をプログラムで利用できるようになります。

もしSQLクエリの実行中に何らかのエラーが発生した場合は、このメソッドはfalseを返します。そのため、クエリが正しく実行されたかを確認するためには、戻り値がfalseでないかをチェックすることが大切です。

ユーザーからの入力値を含むSQLクエリを実行する際は、セキュリティ上の理由から、直接文字列を結合するのではなく、SQLインジェクションを防ぐために、準備されたステートメント(SQLite3::prepareSQLite3Stmt::executeの組み合わせ)を使用することを強くお勧めします。

構文(syntax)

1<?php
2$db = new SQLite3('database.sqlite');
3$sqlQuery = 'SELECT id, name FROM users WHERE status = "active"';
4$queryResult = $db->query($sqlQuery);
5?>

引数(parameters)

string $query

  • string $query: 実行したいSQLクエリ文字列

戻り値(return)

SQLite3Result|false

SQLite3クラスのqueryメソッドは、SQLクエリを実行した結果をSQLite3Resultオブジェクトとして返します。クエリの実行に失敗した場合はfalseを返します。

【PHP8.x】queryメソッドの使い方 | いっしー@Webエンジニア