вопрос
Здравствуйте, под спойлером скрипт подсчета возраста.
Добавил preg_match, данные берутся с доп. поля [data_birthday]. Подключаю через include в полной новости.
Не знаю, на сколько правильно, но в полной новости, где заполнено поле [data_birthday], скрипт правильно считает, а в новостях, где доп. поле не заполнено, выходит ошибка - Fatal error: Call to a member function diff() on a non-object...
---
Помогите, пожалуйста, исправить проблему, ничего не выходит.
Добавил preg_match, данные берутся с доп. поля [data_birthday]. Подключаю через include в полной новости.
Не знаю, на сколько правильно, но в полной новости, где заполнено поле [data_birthday], скрипт правильно считает, а в новостях, где доп. поле не заполнено, выходит ошибка - Fatal error: Call to a member function diff() on a non-object...
---
Помогите, пожалуйста, исправить проблему, ничего не выходит.
<?php
defined('DATALIFEENGINE') || die('good luck');
preg_match('/([0-9]{1,2})\.([0-9]{1,2}).([0-9]{1,4})/', $data_birthday, $match);
if ($match[1]) {
$age = DateTime::createFromFormat('d/m/Y', $match[1] . '/' . $match[2] . '/' . $match[3])->diff(new DateTime('now'))->y;
function YearTextArg($year) {
$m = substr($year, -1, 1);
$l = substr($year, -2, 2);
return $year. ' ' .((($m==1)&&($l!=11))?'год':((($m==2)&&($l!=12)||($m==3)&&($l!=13)||($m==4)&&($l!=14))?'года':'лет'));
}
echo YearTextArg($age);
}
?>