Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Закрытая темаСоздание новой темыСоздание опроса

> Узнать день недели
RCuPeR  
 ۩  [x]    Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



LadaFWD club
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 1448
Пользователь №: 24637
На форуме: 6 лет, 2 месяца, 16 дней
Карма: 22




В общем, стоит передо мной следующая задача: нужно узнать какой был день недели определенного числа.
Вот например, узнать какой был день недели: 20.10.1976.

Как такое можно сделать ?



Спустя 6 минут, 49 секунд (9.12.2011 - 12:10) Michael написал(а):

Спустя 19 минут, 27 секунд (9.12.2011 - 12:29) RCuPeR написал(а):
Не совсем, на сколкьо я понял, она возвращает информацию о текущей секнде. Она может вернуть и указаную мне дату, но нужно знать эту дату в секундах от UNIX, а этого я знать не могу.

Спустя 6 минут, 49 секунд (9.12.2011 - 12:36) killer8080 написал(а):
$date = '09.12.2011';
echo date('l', strtotime(implode('-', array_reverse(explode('.', $date)))));

Спустя 2 минуты, 33 секунды (9.12.2011 - 12:38) Michael написал(а):
Цитата (RCuPeR @ 9.12.2011 - 11:29)
а этого я знать не могу.

но подумать как это узнать, ты хоть попытался бы, а ? wink.gif

Спустя 12 минут, 4 секунды (9.12.2011 - 12:50) Winston написал(а):
$date = strtotime('09.12.2011');
echo strftime("%A", $date);

А если кодировка windows-1251 то перед этим кодом добавь еще
setlocale(LC_ALL, 'russian');

И будет день недели по русски написан :rolleyes:

Спустя 5 минут, 6 секунд (9.12.2011 - 12:55) RCuPeR написал(а):
$arr = getdate(mktime(0, 0, 0, 10, 8, 1992));
echo $arr['weekday'] . '<br>';

$date = '10.08.1992';
echo date('l', strtotime(implode('-', array_reverse(explode('.', $date))))) . '<br>';

$date = strtotime('10.08.1992');
echo strftime("%A", $date);


Последних два способа возврадают Monday, надеюсь, это верно. Проверить никак походу.

Спустя 3 минуты, 22 секунды (9.12.2011 - 12:59) m4a1fox написал(а):
Че это ни как? Открой календарь за 1992 год и проверь!

Спустя 3 минуты, 30 секунд (9.12.2011 - 13:02) Michael написал(а):
Цитата (m4a1fox @ 9.12.2011 - 11:59)
Че это ни как? Открой календарь за 1992 год и проверь!

Это виндовсом пользоваться надо уметь, не много ли требуешь? cool.gif

Спустя 1 минута, 46 секунд (9.12.2011 - 13:04) RCuPeR написал(а):
Тьху ты ёлкипалки ! Точно ! Оце Васыль(

Спустя 7 минут, 55 секунд (9.12.2011 - 13:12) m4a1fox написал(а):
Michael
+1 ну бывает и такое!

Спустя 8 минут, 6 секунд (9.12.2011 - 13:20) killer8080 написал(а):
Опаньки user posted image че то меня переклинило, что формат даты для strtotime, должен быть YYYY-MM-DD. Ну тогда все проще
$date = '10.08.1992';
echo date('l', strtotime($date)) . '<br>';
Цитата (RCuPeR @ 9.12.2011 - 11:55)
Последних два способа возврадают Monday, надеюсь, это верно. Проверить никак походу.

А что мешало просто подставить в строку текущую датуuser posted image

Спустя 1 час, 59 минут, 36 секунд (9.12.2011 - 15:20) RCuPeR написал(а):
Хм, появился трабл.
Если использую скрипт в чистом виде - все идеаль, только вставляю в фреймворк - выдает неверный результат. Что может быть ?

Спустя 1 минута, 9 секунд (9.12.2011 - 15:21) Winston написал(а):
Цитата (RCuPeR @ 9.12.2011 - 14:20)
выдает неверный результат

Если на хостинге, то возможно там свои настройки, например временной зоны.

Спустя 2 минуты, 57 секунд (9.12.2011 - 15:24) killer8080 написал(а):
Временную зону можно узнать так
echo date_default_timezone_get();

правда на день недели оно особо влиять не должно :blink:

Спустя 2 минуты, 44 секунды (9.12.2011 - 15:27) RCuPeR написал(а):
На локалке.
Фреймворк отстает по времени на 2 часа. Как сие исправить ?

Спустя 1 минута, 14 секунд (9.12.2011 - 15:28) killer8080 написал(а):
date_default_timezone_set()

Спустя 51 секунда (9.12.2011 - 15:29) Winston написал(а):

Спустя 12 секунд (9.12.2011 - 15:29) RCuPeR написал(а):
date_default_timezone_get();

В чистом виде возвращает Europe/Helsinki, а на фреймворке GMT.

Спустя 2 минуты, 18 секунд (9.12.2011 - 15:31) killer8080 написал(а):
ну так и пропиши
date_default_timezone_set('Europe/Helsinki');

Спустя 29 секунд (9.12.2011 - 15:32) RCuPeR написал(а):
Есть ! Проблема решена ! Всем спасибо ! Тему можно считать закрытой !


--------------------
Гнусный социопат с комплексом Бога.
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Закрытая темаСоздание новой темыСоздание опроса