ホームページ  >  記事  >  データベース  >  PDO を使用してテーブルから 1 つの列を取得して 1 次元配列にするにはどうすればよいですか?

PDO を使用してテーブルから 1 つの列を取得して 1 次元配列にするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-11 10:35:02650ブラウズ

How to Retrieve a Single Column from a Table into a 1-Dimensional Array Using PDO?

PDO を使用してテーブルから単一の列を 1 次元配列に取得する

PHP データベース対話の領域では、PDO (PHP Data Objects) は、複数のデータベースを一貫して操作するための強力なツールを提供します。 PDO を使用してさまざまなデータ操作タスクを実行するときに、特定の列を配列に抽出する機能が頻繁に発生します。

単一行、単一列の取得

次のようなシナリオを考えてみましょう。 「ingredients」という名前のテーブルがあり、すべての材料名を 1 次元配列に保存したいとします。最初のアプローチには、データベースのクエリ、フェッチ モードの連想への設定、および fetchAll() メソッドの使用が含まれる場合があります。

$stmt = $pdo->query("SELECT `ingredient_name` FROM `ingredients`");
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$ingredients = $stmt->fetchAll();

ただし、このアプローチでは、連想フェッチ モードにより多次元配列が生成されます。あるいは、 fetch() を使用して単一行を取得することもできますが、最初の結果のみが提供されます:

$stmt = $pdo->query("SELECT `ingredient_name` FROM `ingredients`");
$ingredient = $stmt->fetch();

PDO::FETCH_COLUMN が Rescue

テーブルから 1 つの列を効率的に取得して 1 次元配列にするために、PDO はfetchAll(PDO::FETCH_COLUMN) メソッド。このメソッドは、指定された列の配列としてすべての行を取得します。

$sql = "SELECT `ingredient_name` FROM `ingredients`";
$ingredients = $pdo->query($sql)->fetchAll(PDO::FETCH_COLUMN);

fetchAll(PDO::FETCH_COLUMN) を利用すると、特定の列のデータを 1 次元配列に簡単に抽出でき、配列を合理化できます。 PHP データベース プログラミングにおける操作タスク。

以上がPDO を使用してテーブルから 1 つの列を取得して 1 次元配列にするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。