PHPで日付の違いを見つける方法はありますか? 2003 年 10 月 17 日から 2004 年 3 月 24 日までの入力があります。この 2 日間に何日あるかという結果が必要です。224 日であれば、出力は日単位でのみ必要です。
私はmysqlで解決策を見つけましたが、phpが必要です。誰でも私を助けてください、事前に感謝します。
$start = new DateTime( '2003-10-17' );
$end = new DateTime( '2004-03-24' );
$diff = $start->diff( $end );
echo $diff->format( '%d days' );
...それを行う必要があります。
参考のために、 DateTimeとDateIntervalを参照してください。
ただし、これはPHP5.3以降でのみ使用可能です。
タイムスタンプの解析機能を使用して、日付をタイムスタンプに変換し、タイムスタンプを減算してから、結果のタイムスタンプ(秒)を日数に変換できます。
floor((strtotime("2004-03-24") - strtotime("2003-10-17"))/86400);
例は次のとおりです。
$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