列名の配列でデータを取得する

 フェッチスタイルに「FETCH_ASSOC」を指定して取得すると、列名の配列でデータを取得することができます。

○ ファイル

 「TraversableTest.php」ファイルをコピーして、次のPHPファイルをプロジェクトに追加してください。

ファイルの種類 PHPファイル
ファイル名 FetchAssocTest.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを記述してください。

FetchAssocTest.php

  1. try{
  2.  //データベースに接続する
  3.  $pdo = new PDO('mysql:host=' . $host . ';dbname=' . $dbname .';charset=utf8;',
  4.   $username,
  5.   $password);
  6.  //SQL文を実行する
  7.  $result = $pdo -> query('SELECT * FROM users;');
  8.  //データを取得する
  9.  while($row = $result -> fetch(PDO::FETCH_ASSOC)){
  10.   var_dump($row);
  11.  }
  12. }catch(PDOException $e){
  13.  var_dump($e -> getMessage());
  14. }

○ 実行結果

実行結果
実行結果

○ 解説

 25行目はwhile文を指定しました。fetchメソッドは次に読み込む行がないとfalseを返すので、これにより行が存在する間ループします。また、fetchメソッドのパラメーターに「PDO::FETCH_ASSOC」を指定したので、実行結果を確認すると、列名の配列で結果が取得されていることが分かります。

前へ   次へ