PHPにおけるPDOを使用したテーブルからの単一フィールド取得
fetchメソッドの他に、
単一カラムの値を取得できる特別なメソッド
fetchColumnがあります。
どのような意味か見てみましょう。
まず、クエリを準備して実行します。
この際、nameフィールドのみを
選択するように指定します:
<?php
$res = $pdo->prepare('SELECT name FROM users');
$res->execute();
?>
fetchメソッドを使用して結果を取得します:
<?php
while ($col = $res->fetch()) {
var_dump($col);
}
?>
結果として、各イテレーションで ユーザー名という一つの要素からなる配列を 見ることになります:
['name1']
['name2']
['name3']
では、fetchColumnを適用してみましょう:
<?php
while ($col = $res->fetchColumn()) {
var_dump($col);
}
?>
結果として、各イテレーションで 配列ではなく、ユーザー名の文字列そのものを 見ることになります:
'name1'
'name2'
'name3'
全てのユーザーの年齢の値を取得してください。