質問: $dbh->query("select count(*) from comments")->fetchColumn(); ``` このコードのfetchColumn()はどういった意味なのでしょうか? ここのページを見たのですが http://php.net/manual/ja/pdostatement.fetchcolumn.php 「結果セットの次行から単一カラムを返す」と書いてありしっくりこないので質問しました。 よろしくお願いいたします。
回答: 最初のレコードを取り出して最初の列のデータを返します。 (データがなければfalseを返します) fetchColumn後fetchAllなどでデータをとっても、すでに1行目は抜かれているので 2行目からのデータが取り出されます ``` $sql="SELECT * FROM tbl"; $stmt = $pdo->query($sql); var_dump($stmt->fetchColumn()); print_r($stmt->fetchAll(PDO::FETCH_ASSOC)); ``` ※今回の命題はselect count(*) なので 基本的には1列1行のデータしかないため、そのテーブルのデータ数が抜き出されるだけです