問題タブ [dateinterval]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
245 参照

mysql - MySQL: 日付間隔によるカスケード フィルタリング

そのようなタイプのクエリで私を助けることができますか。

私は持っている:

  • postsテーブル
  • commentsテーブル

それらはcomments.post_id = posts.post_id列を介してリンクされています。

ユーザーは、過去のコメントで投稿をフィルタリングできます。

  • 1時間
  • 24時間
  • 2日など

ユーザーが過去 1 時間の投稿を表示することを選択したが、この期間に投稿がない場合は、段階的に進む必要があります。

1 hour過去、空の場合 - 過去24 hours、空の場合 - 過去2 days、空の場合 - 創業以来 (条件なし)の投稿を選択します。

そのようなクエリを作成するのを手伝ってくれる人はいますか?

UPD

「コメントで投稿をフィルター」とは、コメント数で並べ替えることを意味します。

つまり、実際の目標は、「過去 XXX 時間に残されたコメント数で並べ替えられた投稿を表示する」という要求です。

また、「過去 1 時間」が選択されているが、過去 1 時間にコメントが残っている投稿がない場合は、過去 24 時間にコメントが残っている投稿 (コメント数でソート) を取得する必要があります。

テーブル構造

投稿:

  • post_id
  • 題名
  • コンテンツ
  • date_added

コメント

  • comment_id
  • コンテンツ
  • post_id
  • date_added

リンクはposts.post_id = comments.post_id.

ユーザーが過去 1 時間に最も多くコメントされた投稿を表示したときに、次の結果を得たいと考えています。

結果の並べ替え:

  1. リストの一番上は、過去 1 時間以内にコメントされた 2 件の投稿で、コメント数で並べ替えられています。
  2. 次に、前日にコメントされた投稿を配置します。
  3. 次 — 過去 2 日間の期限がコメントされた投稿
  4. コメントされた投稿の期限は過去 1 週間です。ここでも、コメント数の順に並べる必要があります
  5. 過去 1 か月間
  6. 過去 1 年間
  7. このリストの最後には、1 年以上前にコメントされた記事を配置する必要があり、コメント数の順に並べる必要もあります。

前もって感謝します。

0 投票する
2 に答える
234 参照

php - 関数から配列への startdate 値と enddate 値の格納

startdate と enddate を関数から配列に保存して、さらに処理するのを手伝ってくれる人はいますか。

以下の PHP コードは、特定の期間の各月の開始日と終了日を示します。しかし、これらの値を関数から配列に入れることができません。

PHP コード:

上記の関数の出力を次のような配列にする必要があります: 望ましい出力:

0 投票する
1 に答える
788 参照

php - PHP DateInterval が DateTime オブジェクトに適用されない

配列を月の最初の日から開始し、最後に終了するようにしたいと思います。

とてもシンプルです。しかし、結果は、DateInterval 関数が正常に機能しないように見えます。

期待:

現実:

はい、メソッド、これも簡単に修正する方法、別の DateTime オブジェクトを作成し、最初の日に変更し、最初の日から新しい DateTime オブジェクトを作成してから、それに DateInterval を追加できます。

したがって、 $d->modify で DateTime オブジェクトを変更した後、日付を追加できません。しかし、問題はなぜですか?私はこれを理解したいと思います。

答えてくれてありがとう。

レパス

0 投票する
0 に答える
118 参照

php - PHP DateInterval にピリオドがありません

私の目的は、指定された 2 つの日付の間の 1 分ごとのタイムスタンプを生成することです (実際の問題は異なりますが、これは構造が似ており、説明が簡単です)。私は次のコードを使用しています:

問題は、これを実行すると、365*24*60 のエントリ、つまり 525,600 が見つかるはずですが、代わりに 525,540 しか返されないことです。興味深いことに、3 月は 60 分が完全に欠落しています (3 月 13 日、午前 2 時から 3 時が欠落しています)。

これは本当に奇妙です..私は完全に明白なものを見逃していますか? PHP バージョン 5.4.16 の使用

乾杯、 エイドリアン

0 投票する
4 に答える
1874 参照

php - 開始日から繰り返し間隔を計算する

これは私が持っているものです:

これは私が必要とするものです:定期的な間隔の現在の時刻/日付です

2012-04-03 は火曜日です。2013-07-16 もそうです。毎秒火曜日の繰り返しが今日の日付に当たるか、最後の火曜日になるかを (PHP で) 計算する方法は?

誰?

編集:
@ hek2mgl私はそれをこのように動作させました

0 投票する
1 に答える
2572 参照

php - PHP DateIntervalが月の最終日を返さない

私は次のコードを使用しています:

それはほとんどの場合機能します。範囲を指定すると、範囲内にある毎日の日付が返されます。

使用法:

2013 年 7 月の場合、これは正しい 4 つの結果を返します。すべて 2013 年 7 月の金曜日です。

ただし、最終日が後に発生する日と一致する月 (たとえば、2013 年 5 月と 2014 年 1 月の金曜日) には、返された結果からその月の最終日が失われます。

2013 年 5 月の結果、もちろん金曜日である 31 日が欠落しています。

誰もこれに対する答えを持っていますか? これは私の DateInterval の誤用ですか、それともこのクラスの本当の誤りですか?

0 投票する
5 に答える
52587 参照

php - 真夜中を日変わりと見なして、PHP DateTime の差を日数で取得します

DateTimes2 つの PHP 間の日数の差を取得する最も簡単な方法は何DATEDIFF(DAY)ですか?

たとえば、今日の 13:00 と明日の 12:00 の間では、間隔が 24 時間未満であっても、1 (日) を取得する必要があります。