質問: $stmt -> fetch(); print($rows);//値が一つしかないため、echoでも可? ```
回答: PDOの**fetchメソッド**では、 SELECT文の検索結果をカラム名とレコード値の**連想配列**(配列の添え字がカラム名)で取得します。 (引数の定数指定でカラム名や数字などの添え字の付与の仕方を選択できます。こちらのパラメータ「fetch_style」を参照。) 例として以下のような検索結果が取得される場合のfetchメソッドの返却値を考えてみます。 ``` col1 col2 col3 #左記はカラム名 hoge fuga piyo #左記はレコード値 ``` 上記の結果から「hoge」を得たい → `$rows["col1"]` 上記の結果から「fuga」を得たい → `$rows["col2"]` 上記の結果から「fuga」を得たい → `$rows["col3"]` この考え方はカラム名を直接指定した場合も同様です。 以下は`SELECT col2 FROM~`の場合の検索結果です。 ``` col2 #左記はカラム名 fuga #左記はレコード値 ``` ここから「fuga」を取得するには`$rows["col2"]`のようになります。 **・追記** コメントを受けて。 「pdo fetch カラム」で検索をかけてみました。 質問者さんの要望にマッチしそうなものにfetchColumnメソッドというものが用意されているので、 こちらを利用すると良いかもしれませんね。