datetime — Как отформатировать время в динамически генерируемом описании php?

Я в настоящее время использую:

<? JFactory::getDocument()->setDescription($event->title . " am " . $event->start, 'end' -> $event->end) ?>

это генерирует следующее:

<meta name="description" content="event title am 2017-12-12 15:30:00">

но мне нужно время, чтобы быть в этом формате:

12.12.2017 um 15:30 Uhr

как я могу заархивировать это?
Я знаю, что Даты для События представлены с этим кодом:

helper('date.from_till', array('start' => $event->start, 'end' => $event->end, 'format' => $params->date_format))

Буду очень признателен за вашу помощь 🙂

1

Решение

Вы должны изменить формат и затем передать его setDescription, Вы можете просто сделать это, изменив формат с помощью DateTime

<?php
$date = new DateTime('2017-12-12 15:30:00');
echo $date->format('d.m.Y \u\m H:i').'Uhr';
?>

Демо: https://eval.in/916535

ВЫХОД :

12.12.2017 um 15:30 Uhr
1

Другие решения

На этот вопрос ответили другим вопросом:
https://stackoverflow.com/a/47752218/8207054

$doc->setDescription($event->title . " am " . date('d.m.Y', strtotime($event->start)) . ", " . date('H:i', strtotime($event->end)) . " Uhr");
0

о, извините, это должно работать, я проверил это:

<?
$date_object = new DateTime($event->start);
JFactory::getDocument()->setDescription($event->title . " am " . ($date_object->format("d.m.Y \u\m H:i \U\h\\r")), 'end' -> $event->end);
?>
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector