Передача даты между страницами php и отображением только года

Я пропускаю выбранную пользователем дату между страницами и вызывая целую дату без каких-либо проблем. Теперь я хочу ТОЛЬКО взять год из «fromdate» и «todate». У меня есть код ниже, чтобы передать дату

<? $fromdatePost = $_POST["report_date_from"]; $todatePost = $_POST["report_date_to"]; $fromdate = $_POST["report_date_from"] .' 00:00:00'; $fromdate = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '$3-$2-$1 $4', $fromdate); $todate = $_POST["report_date_to"] .' 00:00:00'; $todate = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '$3-$2-$1 $4', $todate); ?> 

Затем я показываю дату, используя любой из приведенных ниже

 '" . $fromdate ."' 

или

 '" . $fromdate ."' 

Как мне получить, чтобы показывать только год, а не всю дату ?!

Спасибо за любую помощь!

Вы можете использовать следующий код, чтобы получить год:

 $year = date('Y', strtotime($fromdate)); 

Чтобы перефразировать первый комментарий, регулярные выражения здесь не нужны.

Объектно-ориентированный способ сделать это:

 $date = new DateTime($fromdate); $year = $date->format('Y'); 

Хотя я обычно чувствую, что strtotime немного удобнее. ПРИМЕЧАНИЕ. Если вы не передадите какие-либо параметры объекту DateTime (), он заполнит текущую дату и время.