note 102601 added to function.date-diff

From: Date: Thu, 24 Feb 2011 00:22:34 +0000
Subject: note 102601 added to function.date-diff
Groups: php.notes 
Request: Send a blank email to php-notes+get-177269@lists.php.net to get a copy of this message
Based in part on previous try, which didn't work for me :( -- http://us3.php.net/manual/en/function.date-diff.php#101771 function dateDiff($timestamp1, $timestamp2, $format = false){ $date1 = getdate($timestamp1); $diff = getdate($timestamp2); //find the differences between the two foreach($diff as $aspect => &$value){ $value -= $date1[$aspect]; } //now adjust for negative numbers if( $diff['seconds'] < 0 ){ $diff['seconds'] += 60; $diff['minutes']--; } //now adjust for negative numbers if( $diff['minutes'] < 0 ){ $diff['minutes'] += 60; $diff['hours']--; } //now adjust for negative numbers if( $diff['hours'] < 0 ){ $diff['hours'] += 24; $diff['mday']--; } //now adjust for negative numbers; special for days! if( $diff['mday'] < 0 ){ $diff['mday'] += cal_days_in_month(CAL_GREGORIAN, $date1['mon'], $date1['year']); $diff['mon']--; } //now adjust for negative numbers if( $diff['mon'] < 0 ){ $diff['mon'] += 12; $diff['year']--; } //now adjust for negative numbers if( $diff['year'] < 0 ){ return 'WTF?'; } //return formatted, or just the diff if($format){ return str_replace( array( '%y' ,'%m' ,'%d' ,'%H' ,'%M' ,'%S' ) ,array( $diff['years'] , $diff['mon'] , $diff['mday'] , $diff['hours'] , $diff['minutes'] , $diff['seconds'] ) , $format ); } return $diff; } ---- Server IP: 192.41.42.26 Probable Submitter: 71.22.18.147 ---- Manual Page -- http://www.php.net/manual/en/function.date-diff.php Edit -- https://master.php.net/note/edit/102601 Del: integrated -- https://master.php.net/note/delete/102601/integrated Del: useless -- https://master.php.net/note/delete/102601/useless Del: bad code -- https://master.php.net/note/delete/102601/bad+code Del: spam -- https://master.php.net/note/delete/102601/spam Del: non-english -- https://master.php.net/note/delete/102601/non-english Del: in docs -- https://master.php.net/note/delete/102601/in+docs Del: other reasons-- https://master.php.net/note/delete/102601 Reject -- https://master.php.net/note/reject/102601 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#177269) next »