- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:sqlのデータを多次元配列に入れた時)
sqlのデータを多次元配列に入れた時
このQ&Aのポイント
- PHPとMySQLの組み合わせでテーブルからデータを取得し、多次元配列に格納したい場合の方法について説明します。
- テーブル名が「post」で、カラム名が「no」「title」「content」「time」のデータがある場合、下記のSQLを使用してデータを取得し、配列に格納することができます。
- 配列には、カラム名と配列の番号が同じ値が格納されます。例えば、「no」の値は「$posts[0]['no']」でも「$posts[0][0]」でも取得できます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
数字の添え字(列番号)でも名前の添え字(列名)でもアクセスできるようにするためでしょう。さすがPHP、サービス精神旺盛だとほめてあげてください。 というのは半分冗談だが、興味があれば http://php.net/manual/ja/pdostatement.fetchall.php http://php.net/manual/ja/pdostatement.fetch.php http://php.net/manual/ja/pdo.setattribute.php ここらあたりを読んでみるといいだろう。 例えばメモリ使用量を減らす目的で列番号だけでいいよという場合は $pdo->query("SELECT * FROM post"); の前に $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_NUM); とすると良い。他にも列名だけにしたりクラスの変数にマッピングしたりなどいろいろあるので試してみると理解が深まるだろう。
お礼
有難うございます。 色々とやりかたがあるんですね。