日時の unix-timestamp 表現を取り、月初の真夜中などの表現を返す汎用関数が必要です。
つまり1352376093
、現在 (Thu, 08 Nov 2012 12:01:33 GMT) を表すI を渡し、 1351728000
(Thu, 01 Nov 2012 00:00:00 GMT) を表す I を返します。
日時の unix-timestamp 表現を取り、月初の真夜中などの表現を返す汎用関数が必要です。
つまり1352376093
、現在 (Thu, 08 Nov 2012 12:01:33 GMT) を表すI を渡し、 1351728000
(Thu, 01 Nov 2012 00:00:00 GMT) を表す I を返します。
このスニペットは、問題の解決に役立つはずです。既存の日付から月と年のみを取得し、タイムスタンプに変換するだけです。
<?php
$time = 1352376093;
$date = date('Y-m-01 00:00:00', $time);
$result = strtotime($date);
したがって、この関数になりました:
$earliest_issue = db_result( $result, 0 );
$day_of_month_of_earliest_issue = date("d", $earliest_issue);
$hour_of_month_of_earliest_issue = date("h", $earliest_issue);
$minute_of_month_of_earliest_issue = date("i", $earliest_issue);
$seconds_in_month = date("s", $earliest_issue);
$seconds_in_day_of_month = (($day_of_month_of_earliest_issue*24*60*60)-86400);
$seconds_in_hour_of_month = (($hour_of_month_of_earliest_issue*60*60)-3600);
$seconds_in_minute_of_month = (($minute_of_month_of_earliest_issue*60));
$start_time_of_query = ($earliest_issue - $seconds_in_day_of_month - $seconds_in_hour_of_month - $seconds_in_minute_of_month - $seconds_in_month);
return $start_time_of_query;
$earliest_issue
開始日はどこですか...
これを読んでいる人が私が望んでいたよりエレガントな機能を持っているなら、貢献してください、ありがとう!