 # Age Validation Function

## Age Validation Function

10 Août 2013, Posted by antoine in
`<?php`
`    ``// Function to calculate whether customer is old enough to purchase product – DOB input in format YYYY-MM-DD`
`    ``// Created by Jacob Ward (http://www.jacobward.co.uk) - Please leave this in if you choose to use this in your projects.`
`    ``function` `validate_age(``\$dob``, ``\$restriction``) {`
`    `
`        ``\$dates` `= ``explode``(``"-"``, ``\$dob``);    ``// Exploding sections of date into array`
`        `
`        ``\$year` `= ``date``(``"Y"``) - ``\$dates``[``"0"``];    ``// Subtracting entered year from current year`
`        ``\$month` `= ``date``(``"m"``) - ``\$dates``[``"1"``];   ``// Subtracting entered month from current month`
`        ``\$day` `= ``date``(``"d"``) - ``\$dates``[``"2"``]; ``// Subtracting entered day from current day`
`        `
`        ``// If month is negative, means it's a year earlier - Decrement year by 1. Else if month is 0 and day is negative, means it's a year earlier - Decrement year by 1`
`        ``if` `(``\$month` `< 0) {`
`            ``\$year``--;`
`        ``} ``elseif` `(``\$month` `== 0 && ``\$day` `< 0) {`
`            ``\$year``--;`
`        ``}`
`        `
`        ``// If customer's age is greater than or equal to certificate then age is valid, else it's invalid`
`        ``if` `(``\$year` `>= ``\$restriction``) { `
`            ``\$valid_age` `= TRUE;`
`        ``} ``else` `{`
`            ``\$valid_age` `= FALSE;`
`        ``}`
`        `
`        ``return` `\$valid_age``;  ``// Return TRUE or FALSE whether customer is old enough to purchase product`
`    ``}`
`?>`
`\$dob` `= ``"1985-11-18"``;`
`\$age_restriction` `= 18;`
`validate_age(``\$dob``, ``\$age_restriction``);`