• 締切
  • すぐに回答を!

複数のレコードの値を取り出すには

  • 質問No.9192620
  • 閲覧数203
  • ありがとう数3
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 83% (5/6)

初心者です。あるカラムから複数のレコードの値を取り出すにはどのように書けばよいかどなたか教えていただけますでしょうか。

下記のコードではcalendartblというテーブルから1レコードのみ取り出せます。

テーブル:calendartbl

holiday(カラム名)
2016/9/12(レコード1行目)
2016/9/14(レコード2行目)
2016/9/20(レコード3行目)
2016/9/26(レコード4行目)
2016/9/28(レコード5行目)

コード:

$sql = "SELECT calendartbl.holiday FROM calendartbl";
$ret = f_db_select($sql);
foreach ($ret as $h){
$holiday = $h['holiday'];
}

結果=2016/9/12

では複数のレコード、つまり「2016/9/12、2016/9/14、2016/9/20、2016/9/26、2016/9/28」を取り出して、上記の$holidayに代入させるにはどのように書けばよいでしょうか。
どなたか教えて頂けたら幸いです。

よろしくお願い致します。

回答 (全1件)

  • 回答No.1

ベストアンサー率 24% (192/770)

f_db_select  てのが中身みえないので当てずっぽですが、

foreach ($ret as $h){
$holiday[] = $h['holiday'];
}

これで配列として取れると思うけど・・・・
----------------------------------------
てか質問に記載しているプログラムは最終的に1つの値を取り出すために複数の値をsqlで取得したうえで、foreachでぐるぐる回して、全ての値を$holydayに代入している処理になっています。そのため最後に取れた値が$holydayに最終的には入っていますが、、なぜにこんなことしてるんでしょうか。。。何をやっているのか理解できてなくて偶然動いた的な感じが見受けられます。
補足コメント
leoairen

お礼率 83% (5/6)

$holidayに入った複数の日付がカレンダーにある日付と一致したときにある処理を実行したいですが、行き詰まっています。
「if (date("Y-m-d", mktime(0, 0, 0, $m, $d, $y)) == $holiday){
処理
}」
投稿日時:2016/06/25 17:23
お礼コメント
leoairen

お礼率 83% (5/6)

ご回答、ありがとうございます。
投稿日時:2016/06/25 17:20
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ