2012-04-10 3 views
0

Мы просто конвертируем наш блог в соответствии с нашим стилем сайта.php/styling/date issue

Дата проведения POST (для блога пост является)

<?php echo date($OptionsVis["date_format"],strtotime($Post["publish_date"])); ?> 

Что дает: 08 JAN

Но я хочу, чтобы представить дату, как это:

 <div class="post-list-date"> 
      <h1>08</h1> 
      <h2>JAN</h2> 
     </div> 

Может вы думаете о том, как я могу разделить свой php, чтобы получить то, что я за ним. Без ошибок со всей моей системой блога.

ответ

1

Я хотел бы предложить два $OptionsVis значения (date_format_main, date_format_sub). Затем сделать два отдельных date() вызовов, один для в <h1> и другой для в <h2> так:

$date_h1 = date($OptionsVis["date_format_main"], strtotime($Post["publish_date"])); 
$date_h2 = date($OptionsVis["date_format_sub"], strtotime($Post["publish_date"])); 

Если это не представляется возможным, и вы знаете, что формат даты всегда будет то же самое, вы могли бы сделать:

$date = date($OptionsVis["date_format"], strtotime($Post["publish_date"])); 
list($date_h1, $date_h2) = explode(" ", $date, 2); 
+0

Отличная благодарность – 422

1

Просто постобработки выход:

<?php 
    $date = date(... existing code...); 
    list($d, $m) = explode(' ', $date); 
?> 
<div class="post-list-date"> 
    <h1><?php echo $d; ?></h1> 
    <h2><?php echo $m; ?></h2> 
</div> 
+1

Это то, что я печатал, но я включил '2' в качестве третьего параметра взорвать, на всякий случай. – animuson

0

Хотя семантика вашего HTML несколько необычна (ч теги, как правило, зарезервированы для текстовых заголовков, которые имеют отношение к содержанию), я хотел бы попробовать что-то вроде следующего:

$date_array = explode(" ", date($OptionsVis["date_format"],strtotime($Post["publish_date"]))); 

$date_html = "<div class=\"post-list-date\"><h1>".$date_array[0]."</h1><h2>".$date_array[1]."</h2></div>"; 

echo $date_html; 

Надеюсь, это поможет, счастливое кодирование.