2014-02-20 2 views
-4

Я узнал, как рассчитать возраст пользователя, взяв дату рождения в формате дня, месяца и года в полях выбора. Затем, я разбираю их dob в формате dd-mm-yyyy. Я создаю новую DateTime и назову ее как сегодня, а затем просто использую DateDiff, чтобы найти возраст. Проблема DateDiff() больше не поддерживается в новых версиях php. Кто-нибудь знает работу, которую я могу использовать с моими существующими кодами? Извините, новичок, поэтому мне может потребоваться множество примеров для ваших предложений.Проблема с DateDiff()

Вычислить Возраст

$d=$_POST['day']; 
$m=$_POST['month']; 
$y=$_POST['year']; 

//converting Inputed DOB in "dd-mm-yyyy" format 
$dob=$d.'-'.$m.'-'.$y; 

//Create a new date object with current system date 
$bday=new DateTime($dob); 

//Differentiating both dates 
$age=$bday->date_diff(new DateTime); 

$today=date('d-m-Y'); 


$birthdate = mysql_prep($dob); 
$c_age = $age->y; 
+4

Кто сказал, что 'date_diff()' не поддерживается в более новых версиях PHP? Это доступно только с 5.3: http://www.php.net/date_diff –

ответ

0

Использование:

$age = $bday->diff(new DateTime); 

или:

$age = date_diff($bday, new DateTime()); 

$c_age = $age->y; 

обе версии возможны, р аренда ссылаются на manual

+0

erm, что я получил, была эта ошибка: Неустранимая ошибка: вызов неопределенной функции date_diff() в/home/mydentis/public_html/test/create_patient. php в строке 45 – user3333324

+0

, какую версию php вы используете? – hek2mgl

+0

PHP 5.2.17, erm считается старым? – user3333324

Смежные вопросы