PHPBuilder - Calculate dates before 1970, in forms etc--Defeat Windows limitations!



RSS Twitter
Tips Php Functions

Calculate dates before 1970, in forms etc--Defeat Windows limitations!

by: R.McCain
|
February 9, 2004

In form, designate 3 separate fields for your date. Mine were cdoby (i.e., ClientDateOfBirthYear), cdobm (ClientDateOfBirthMonth), and cdobd (ClientDateOfBirthDay). AGE (or other date calculations):

<?php // BIRTH YEAR NUMBER $yage = "$cdoby"; // $yage is a string $yage += 0; // $yage is now an integer--year of birth // BIRTH MONTH NUMBER $mage = "$cdobm"; // $mage is string $mage += 0; // $mage is now an integer--month of birth // BIRTH DAY NUMBER $dage = "$cdobd"; // $dage is string $dage += 0; // $dage is now an integer--day of birth //CALCULATE AGE //(including consideration for leap years) $leap = date("L"); //adds 0 if not leap year, +1 if it is $nowday = date("d"); //day part of today's date $nowday += 0; // convert date string to true integer $lnowday = ($nowday + $leap); //leapyear consideration $nowmonth =date("m"); //month part of today's date $nowmonth += 0; // convert date string to true integer $myyear = date("Y"); //this year as 4 digit number $age = ($myyear-$yage); //Almost there! ?> //DETERMINE IF BIRTHDAY HAS TAKEN PLACE OR NOT //AND PRINT AGE <?php if (($nowmonth < $mage) OR (($nowmonth < $mage) AND ($lnowday < $dage))) { $age=$age-1; } print $age ?>

It works great--however, I've only tested it back to the year 1949.

You folks have helped me so much--I hope this benefits someone as well!

Comment and Contribute

Your comment has been submitted and is pending approval.

Author:
R.McCain

Comment:



Comment:

(Maximum characters: 1200). You have characters left.