In PHP programs, processing time is often encountered, for example, determining how long a user has been online and how many days has been logged on, the time difference between two posts or the log records between different operations. In this article, we will give an example of how PHP calculates the differences between the two dates: year, month, and day.
<? Php/** + ------------------------------------------------------------ * function: calculate the difference between the two dates: year, month, and day + period * @ param date $ date1 start date * @ param date $ date2 end date + period * @ return array + period */function DiffDate ($ date1, $ date2) {if (strtotime ($ date1)> s Trtotime ($ date2) {$ ymd = $ date2; $ date2 = $ date1; $ date1 = $ ymd;} list ($ y1, $ m1, $ d1) = explode ('-', $ date1); list ($ y2, $ m2, $ d2) = explode ('-', $ date2 ); $ y = $ m = $ d =$ _ m = 0; $ math = ($ y2-$ y1) * 12 + $ m2-$ m1; $ y = round ($ math/12); $ m = intval ($ math % 12); $ d = (mktime (0, 0, 0, $ m2, $ d2, $ y2)-mktime (0, 0, 0, $ m2, $ d1, $ y2)/86400; if ($ d <0) {$ m-= 1; $ d + = date ('J', mktime (0, 0, 0, $ m2, 0, $ y2);} $ m <0 & $ y-= 1; return array ($ y, $ m, $ d) ;}?>