@igordata1

Почему возраст не выводится?

Почему возраст не выводится?
<?php
$records = array(
    array(
        'id' => 1,
        'first_name' => 'Вася',
        'last_name' => 'Иванов',
        'last_age' => '1990-01-01',
    ),
    array(
        'id' => 2,
        'first_name' => 'Коля',
        'last_name' => 'Сидоров',
        'last_age' => '1991-01-01',
    ),
    array(
        'id' => 3,
        'first_name' => 'Ира',
        'last_name' => 'Иванова',
        'last_age' => '1992-01-01',
    ),
    array(
        'id' => 4,
        'first_name' => 'Женя',
        'last_name' => 'Сидорова',
        'last_age' => '1993-01-01',
    )
);

$first_age = array_column($records, 'last_age');
function calculate_age($birthday) {
    $birthday_timestamp = strtotime($birthday);
    $age = date('Y') - date('Y', $birthday_timestamp);
    if (date('md', $birthday_timestamp) > date('md')) {
        $age--;
    }
    return $age;
}

echo calculate_age(($first_age));


//print_r($first_age);



?>
  • Вопрос задан
  • 128 просмотров
Решения вопроса 1
neuotq
@neuotq
Прокрастинация
$first_age = array_column($records, 'last_age');
$first_age - массив.
Далее
$birthday_timestamp = strtotime($birthday);
strtotime()- принимает только строки.
А значит вызывать вашу функцию нужно
echo calculate_age($first_age[0]);
Или в цикле по каждому элементу
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы