PHP: Как узнать дни недели? - PullRequest
0 голосов
/ 04 января 2011

Я хочу хранить элементы в моей базе данных со значением DATE на определенный день.Я не знаю, как получить текущий понедельник или вторник и т. Д. С текущей недели.Вот моя текущая настройка базы данных.

menuentry
 id int(10) PK
 menu_item_id int(10) FK
 day_of_week date
 message varchar(255)

Итак, у меня есть настройка класса, которая содержит всю информацию, тогда я собирался сделать что-то вроде этого ...

foreach ( $menuEntryArray as $item )
{
   if ( $item->getDate() == [DONT KNOW WHAT TO PUT HERE] )
   {
      // code to display menu_item information
   }
} 

Так что яЯ просто не уверен, что вставить в «[НЕ ЗНАЮ, ЧТО СДЕЛАТЬ ЗДЕСЬ]», чтобы сравнить, чтобы увидеть, указана ли дата для понедельника или вторника этой недели и т. д. Приведенный выше foreach работает для каждого дня недели - такбудет выглядеть так ...

Monday
Item 1
Item 2
Item 3

Tuesday
Item 1

Wednesday
Item 1
Item 2

...

Спасибо!

Ответы [ 2 ]

5 голосов
/ 04 января 2011

$ день = дата ( 'л', StrToTime ($ пункт [ 'DAY_OF_WEEK']));

2 голосов
/ 04 января 2011

Во-первых, спасибо Спасибо за ваш ответ, но мне нужно было больше. Я не думаю, что я был достаточно ясен с моим вопросом, возможно. Я, наконец, заработал, вот что я сделал ...

function getCurrentWeek()
{
    $weekArray = array();

    // set current date1
    $date = date("m/d/Y"); //'04/30/2009';

    // parse about any English textual datetime description into a Unix timestamp
    $ts = strtotime( $date );

    // calculate the number of days since Monday
    $dow = date('w', $ts);
    $offset = $dow - 1;
    if ($offset < 0) $offset = 6;

    // calculate timestamp for the Monday
    $ts = $ts - $offset*86400;

    // loop from Monday till Sunday
    for ($i=0; $i<7; $i++, $ts+=86400){
        $temp_date = date("Y-m-d", $ts);  // here I set it to the same format as my database
        array_push( $weekArray, $temp_date );
    }

    return $weekArray;

}

Тогда я использовал это с этим ...

    foreach ( $menu as $item )
    {
        if ( $item->getDayOfWeek() == $weekArray[0] )
        {
            // do my stuff
        }
    }

Надеюсь, это кому-нибудь поможет, еще раз спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...