レコードセットについて

mysql_query() の返り値を
レコードセットと言います
これは、セットという名前のとおりでレコードのセットです
前回実行した
mysql_query(‘SELECT * FROM my_imtems’);
の場合、この検索結果すべてが
レコードセットとして格納されます
この中からデータをとってくるのが
mysql_fetch_assoc()
ですが、
書籍によると言葉の意味が載っていました
fetch とってくる
assoc 連想
ということで、連想配列としてとってくるという意味になるそうです
こういう解説をみていると英語の単語の意味がわかるようになると
プログラムの解読もしやすいのかもしれません
ちなみに、
$recordSet = mysql_query(‘SELECT * FROM my_items’);
$data = mysql_fetch_assoc($recordSet);
echo $data[‘item_name’];
$data = mysql_fetch_assoc($recordSet);
echo ‘<br/>’.$data[‘item_name’];
というようにすると
続けて次のデータが表示されます
.$data のところですが
PHP では . を使うことで、文字列をつなげることができます
主に変数に格納したものを表示するときなどにつかわれます
とくに、HTTPSとHTTPの区別をしたいときとか、切り替え要素のときに
つかうことが多いです
ただし、さすがに毎回書き足していくと、facebook アプリなどで
これを行っていたら、さすがに人力では限界があります
facebook の友達は5000人まで増やせますが
5000回も繰り返すのは正気ではできません
なので、繰り返し処理を行う
while 文なども使います
while($data = mysql_fetch_assoc($recordSet)){
echo $data[‘item_name’];
echo ‘<br/>’;
}
となります
これで、すべての item_name の内容が記述されます
ほかの関数もありますが、代表的なのが
mysql_fetch_row()
レコードを単純配列として取得
フィールド名にこだわらずに処理するときに使用
mysql_fetch_array()
通常配列と、連想配列の両方を得られる
たぶん、これが一番つかうかも
http://php.net/manual/ja/book.mysql.php
に mysql 関連が載っていますので、用途に応じて使いましょう

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です