Название, вероятно, не имеет особого смысла; Я PHP любитель.
Я пытаюсь создать пользовательский тег для моего форума, который будет отображать "X Years of Experience", но с разными цветами для каждого года, например красным для 6 месяцев, синий для первого года, желтый для второго года и т. Д.
Это код, который я сейчас использую:
<div class="ipsType_center memExperience" data-ipstooltip="">
{{$joinDate = $comment->author()->get_joined(); $currentDate = new \DateTime(); $interval = $joinDate->diff($currentDate); $experience = \IPS\DateTime::formatInterval($interval, 1);}}
<li class="ipsResponsive_hidePhone memCustomFields">{$experience} {lang="memberexperience_experience"}</li>
Я был удалось найти рабочий образец для получения разницы в датах, и он отлично работает. Теперь мне просто нужно выяснить, как превратить $ опыт в значение, которое я могу использовать с CSS.
Я также нашел код, который позволяет форматировать переменную в часы для сравнения. Это тот код:
<?php
$hour = $experience->format('H');
if ($hour < 12) {
echo "Morning";
} else {
echo "Afternoon or evening";
}
?>
Это не работает для меня, потому что мой результат всегда X дней, X месяцев или X лет. С ним всегда ассоциируется число, но это могут быть дни, месяцы, годы.
Я пытаюсь сделать что-то вроде ...
{{if $experience < 6 Months}}
Make Text Red
{{elseif $experience > 1 Year}}
Make Text Blue
{{elseif $experience > 2 Years}}
Make Text Yellow
...
Я чувствую, что переключатель может быть лучшим вариантом здесь, но опять же, я не совсем уверен, как сделать так, чтобы $ опыт конвертировался в дни, месяцы, годы.