• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:選択日と終了日を配列で取得したい)

phpで配列に選択日と終了日を取得する方法

このQ&Aのポイント
  • PHPで配列に選択日と終了日を取得する方法を説明します。開始日から終了日までの日付を配列に格納するため、以下のコードを使用します。ただし、2014/10/26が二度表示される問題が発生しています。
  • 開始日から終了日までの日付を配列に格納するために、PHPのmktime()関数を使用します。まず、開始日と終了日をUnixタイムスタンプに変換し、1日ごとに繰り返し処理を行い、それぞれの日付を配列に追加します。
  • しかし、このコードではなぜか2014/10/26が二度表示されてしまいます。これは、終了日を1日進める必要があるためです。終了日をdate()関数を使用して1日進めるように修正すると、問題が解決します。修正後のコードは以下の通りです。

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>なぜか、2014/10/26が二つ出現してしまいます。 原因はぱっと思いつかないですが こんな風にしてみてはどうですか? <?PHP $startDay = "2014/10/8"; $endDay = "2014/11/26"; foreach(range(strtotime($startDay),strtotime($endDay),86400) as $val){ $keyDate[]=date("Y/m/j",$val); } print_r($keyDate); ?>

paranoaman
質問者

お礼

有難うございます! 無事直りました!有難うございます! ベストアンサーに選ばせていただきます!

その他の回答 (1)

  • ONEONE
  • ベストアンサー率48% (279/575)
回答No.1

簡単な回答となってしまいますが、 自分だったら開始日と終了日の差をとって何日か計算する forでその日数分だけ date('Y/m/d',strtotime("開始日+{$i}day")) を回して配列につっこみます。

paranoaman
質問者

お礼

ありがとうございます! やってみます! ご教授いただき有難うございました!

関連するQ&A

専門家に質問してみよう