-
-
Save eliasfaical/f33ca685947d0996e4d7 to your computer and use it in GitHub Desktop.
Get Age from BuddyPress datebox field data
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Get Age from BuddyPress date of Birth | |
* @param string $dob_field_name :name of the DOB field in xprofile, like Dob or Date of Birth | |
* @param int $user_id : the user for which you want to retrieve the age | |
* @param string $format: the way you want to print the difference, look t <http://php.net/manual/en/dateinterval.format.php> for the acceptable agrs | |
* @return string :the formatted age in year/month | |
*/ | |
function bpdev_get_age_from_dob($dob_field_name,$user_id=false,$format="%y Years, %m Month(s), %d days"){ | |
if(!$user_id) | |
$user_id=bp_displayed_user_id (); | |
$dob_time=xprofile_get_field_data($dob_field_name, $user_id);//get the datetime as myswl datetime | |
$dob=new DateTime($dob_time);//create a DateTime Object from that | |
$current_date_time=new DateTime();//current date time object | |
//calculate difference | |
$diff= $current_date_time->diff($dob);//returns DateInterval object | |
//format and return | |
return $diff->format($format); | |
} | |
/*usage | |
echo "Your Age".bpdev_get_age_from_dob("Dob",bp_loggedin_user_id()); | |
//and so on | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment