1

PHPで日付の違いを見つける方法はありますか? 2003 年 10 月 17 日から 2004 年 3 月 24 日までの入力があります。この 2 日間に何日あるかという結果が必要です。224 日であれば、出力は日単位でのみ必要です。

私はmysqlで解決策を見つけましたが、phpが必要です。誰でも私を助けてください、事前に感謝します。

4

3 に答える 3

5
$start = new DateTime( '2003-10-17' );
$end   = new DateTime( '2004-03-24' );
$diff  = $start->diff( $end );

echo $diff->format( '%d days' );

...それを行う必要があります。

参考のために、 DateTimeDateIntervalを参照してください。

ただし、これはPHP5.3以降でのみ使用可能です。

于 2010-04-21T04:26:32.793 に答える
2

タイムスタンプの解析機能を使用して、日付をタイムスタンプに変換し、タイムスタンプを減算してから、結果のタイムスタンプ(秒)を日数に変換できます。

floor((strtotime("2004-03-24") - strtotime("2003-10-17"))/86400);
于 2010-04-21T04:22:26.077 に答える
0

例は次のとおりです。

$startDate = new DateTime( '2013-04-01' );    //intialize start date
$endDate = new DateTime( '2013-04-30' );    //initialize end date
$holiday = array('2013-04-11','2013-04-25');  //this is assumed list of holiday
$interval = new DateInterval('P1D');    // set the interval as 1 day
$daterange = new DatePeriod($startDate, $interval ,$endDate);
foreach($daterange as $date){
if($date->format("N") <6 AND !in_array($date->format("Y-m-d"),$holiday))
$result[] = $date->format("Y-m-d");
}
echo "<pre>";print_r($result);

詳細ブログはこちら: http://goo.gl/YOsfPX

于 2014-09-04T06:00:55.273 に答える