Использование UNIX_TIMESTAMP для определения цвета строки

#php #html #timestamp

#php #HTML #временная метка

Вопрос:

В настоящее время у меня есть этот код:

         $rawsql2 = "SELECT 
    *
    FROM 
        _erc_foffices n 
    INNER JOIN 
        _erc_openings o ON n.id = o.branch_id 
    INNER JOIN 
        _erc_openings_times t ON o.id = t.opening_id
    WHERE 
    (
        n.id = %d
    );";

    $sql2 = sprintf($rawsql2, mysql_real_escape_string($id));

    $result2 = mysql_query($sql2);

    /*These if amp; while statements decide whether or not the information should be displayed. If no results are returned from the query above then an alternative message is shown.*/
    if(mysql_num_rows($result2) > 0) {
    $count=0;
    $day = 1;
    echo "<div class='timetable'><p>";
        while ($row = mysql_fetch_array($result2, MYSQL_ASSOC)) {
            if ($day=='1') { echo "<b>Sun - </b>";} else if ($day=='3') { echo "<b>Mon - </b>"; } else if ($day=='5') { echo "<b>Tue - </b>"; } else if ($day=='7') { echo "<b>Wed - </b>"; } else if ($day=='9') { echo "<b>Thu - </b>"; } else if ($day=='11') { echo "<b>Fri - </b>"; } else if ($day=='13') { echo "<b>Sat - </b>"; } else { echo "";}
            if ($row["open"] == 0 amp;amp; $row["close"] == 0) {
     if ($day % 2 == 1) {
         echo "closed";
     }

}
            else{
            echo "" . substr($row["open"], 0, -3) . "-" . substr($row["close"], 0, -3) . " amp;nbsp;amp;nbsp; ";
            if ($count % 2 !=0 ){ echo  "<br/>"; } }
$count  ;
$day  ;

        }
    } else {
            echo "Error";
    }
  

который извлекает расписание из базы данных, а затем отображает его в формате:

Sun — 08:00-12:30 13:30-16:30
Пн — 09:00-17:00 18:00-20:00 и т. Д

Что я хочу сделать сейчас, так это то, что если, например, текущее значение Sunday — воскресенье, то шрифт строки Sunday будет красным. Возможно ли это?

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

Комментарии:

1. Конечно, это возможно. Проверьте функции strtotime() и date() . Но если у вас уже есть названия дней, я не вижу никакой проблемы?

Ответ №1:

Собственный формат даты и времени PHP — это временная метка unix, поэтому вы можете взять значение, полученное в вашем запросе, и получить значение дня недели с помощью date('w', $timestamp) . Это возвращает значение в диапазоне от 0 (воскресенье) до 6 (суббота), и вы можете использовать это для определения цвета.

Комментарии:

1. Привет, спасибо за ваш ответ. Мне трудно понять ответы и как это сделать. Не могли бы вы отредактировать мой код, чтобы я мог узнать, как вы это делаете?

Ответ №2:

Вы также можете использовать функцию mysql DAYOFWEEK в своем запросе:
SELECT *, DAYOFWEEK(your_column_name) as dw .....