こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

PHPでMySQLのデータを2次元配列に格納する

PHPの本に
$r = mysql_query("SELECT * FROM tb;");
while ($row = mysql_fetch_array($r)){
print "{$row['id']}{$row['title']}<BR>";
}
とあったのですが1行ずつしか保存できないので

2次元配列row[][]で
while ($row[] = mysql_fetch_array($r)){
}
foreach($row as $v){
print "{$v['id']}{$v['title']}<BR>";
}
このようにコーディングしたところ
一応うまく表示されたのですが、問題はないですか?
もし普通はこういう風にするみたいなやり方があれば
教えて欲しいです。

投稿日時 - 2013-10-04 23:53:33

QNo.8292059

困ってます

質問者が選んだベストアンサー

本が古すぎます。
現在は非推奨のmysql関数ではなく、PDOを使います。
http://qiita.com/mpyw/items/b00b72c5c95aac573b71

投稿日時 - 2013-10-05 09:51:30

お礼

ありがとうございます。
本ではわかりやすいように2段階で書いてありました。
最初にこれをやって次にPDOを使う方法で。

投稿日時 - 2013-10-05 21:17:41

このQ&Aは役に立ちましたか?

6人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

こんばんは。

配列 count ($row) の 値と、実際の行数を比較してみれば判る。ごみが残ってない?!

投稿日時 - 2013-10-05 19:27:38

お礼

連想配列と添字配列両方に代入しているんですね。
知りませんでした。

投稿日時 - 2013-10-05 21:16:06

公式マニュアルに書かれている通りです。
http://www.php.net/manual/ja/function.mysql-query.php

投稿日時 - 2013-10-05 01:08:33

お礼

回答ありがとうございました。

投稿日時 - 2013-10-05 21:18:05

あなたにオススメの質問