Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> получить дату, Не могу получить одну дату без времени 
:(
    Опции темы
Str!pe
Дата 31.3.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: нет
Всего: 152



Добрый день всем.
Проблема у меня следующего характера
Цитата

print scalar(localtime);

отдает дату машины пользователя вместе со временем, мне же необходимо вытащить только дату, месяц и день. В страницу они должны попасть в три разных тега, тоесть дата вида "25" в один тег, месяц вида "август" в другой тег, день вида "пятница" в третий.
Знает ли кто-нибудь как это организовать?

З.Ы. С Перлом да и вообще с любым языком прпограммирования знаком второй день (остаточные знания по Паскалю не считаются).


Это сообщение отредактировал(а) Str!pe - 31.3.2007, 14:09


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
shamber
Дата 31.3.2007, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

Репутация: 17
Всего: 18



Это очень просто организуется 

Код

my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =localtime(time);


и все smile

PS по поводу месяц вида "август" в другой тег, день вида "пятница" в третий.

Код


my @abbr = qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec );
    print "$abbr[$mon] $mday";
    # $mon=9, $mday=18 gives "Oct 18"


остальное смотрите в perldoc -f localtime

Это сообщение отредактировал(а) shamber - 31.3.2007, 15:02
PM MAIL Jabber   Вверх
Str!pe
Дата 31.3.2007, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: нет
Всего: 152



shamber
Ну вот так получается... 

Код

my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =localtime(time);

my @abbr = qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь );
    print "$mday";
    print "$abbr[$mon]";
    print "$wday";
    # $mon=9, $mday=18 gives "Oct 18"


я так понимаю надо еще кодировку указать? Да и думаю что делать три разных файла глупо, как раскидать их по тегам?

Ток не минусуйте, просто я общаясь получаю больше знаний чем от книг и прочего, их итак рядом хватает.


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
nitr
Дата 31.3.2007, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Str!pe, что значит по тегам раскидать? И зачем на 3 smile
Код ваш вполне нормальный...

Это сообщение отредактировал(а) nitr - 31.3.2007, 15:59


--------------------
PM   Вверх
Str!pe
Дата 31.3.2007, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: нет
Всего: 152



Цитата(nitr @  31.3.2007,  15:56 Найти цитируемый пост)
Str!pe, что значит по тегам раскидать? И зачем на 3 Код ваш вполне нормальный...

Это делается для следующего... в один тег выводится день недели допустим <h3>вторник</h3>, в другой тег допустим <h1>25</h1> выводится дата. В третий выводится месяц <small>Декабрь<small> все это выводится в разных местах стрнаицы.


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
nitr
Дата 31.3.2007, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Str!pe, у тебя ООП подход?

Если нет, вот тебе функция ;)
Код

#!perl
use strict; use warnings;

print get_my_time()->{mday};

sub get_my_time {
    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =localtime(time);

    return {
        'mday' => $mday,
        'mon'  => qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь )[$mon],
        'wday' => $wday,
    };
}


Добавлено через 1 минуту и 21 секунду
Думаю удобно будет ею пользоваться? smile
там соот. 
mon - get_my_time()->{mon};
wday - get_my_time()->{wday};


Добавлено через 5 минут и 49 секунд
можно уменьшить, но может чуть медленней работать ;)
Код

sub get_my_time {
    return {
        'mday' => (localtime(time))[3],
        'mon'  => qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь )[(localtime(time))[4]],
        'wday' => (localtime(time))[6],
    };
}



--------------------
PM   Вверх
nitr
Дата 31.3.2007, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



а можно ещё умнее ;)
Код

sub get_my_time2 {
    return {
        'mday' => $_->[3],
        'mon'  => qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь )[$_->[4]],
        'wday' => $_->[6],
    } for [ localtime(time) ];
}



--------------------
PM   Вверх
tishaishii
Дата 31.3.2007, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Код
sub fdatetime {
    my($format, %datetime)=shift;
    @datetime{+qw(sec min hour mday mon year wday yday isdst)}=localtime(shift||time);
    $datetime{year}+=1900;
    $datetime{mon}++;
    $format=~s{(\%\d*(?:\.\d*)?[bdoxsleiu])\{(.+?)\}}{+sprintf $1, $datetime{$2}}geio;
    +$format
}

print &fdatetime('%02d{hour}:%02d{min}:%02d{sec}');


Это сообщение отредактировал(а) tishaishii - 31.3.2007, 18:57
PM MAIL ICQ Skype   Вверх
nitr
Дата 31.3.2007, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



первый способ можно тоже извратить... ;) для экономии памяти наверное ;)
Код

sub get_my_time {
    my ($mday, $mon, $wday) = (localtime(time))[3,4,6];

    return {
        'mday' => $mday,
        'mon'  => qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь )[$mon],
        'wday' => $wday,
    };
}

но я выбираю этот http://forum.vingrad.ru/index.php?showtopi...t&p=1082342
красивый (скромно ;) )

P.S.:
tishaishii, он просит, чтобы легче по тегам расскидывать ;)

Это сообщение отредактировал(а) nitr - 2.4.2007, 17:01


--------------------
PM   Вверх
tishaishii
Дата 31.3.2007, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Ну я и показал как легко это сделать.
А ты читать умеешь или пока что только букву "А" освоил?

Это сообщение отредактировал(а) tishaishii - 31.3.2007, 22:00
PM MAIL ICQ Skype   Вверх
nitr
Дата 1.4.2007, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



[offtopic]
Цитата(tishaishii @  31.3.2007,  21:59 Найти цитируемый пост)
А ты читать умеешь или пока что только букву "А" освоил?

tishaishiiты всегда такой разговорчивый или просто прикидываешься?

Твой код вполне, но не всем новичкам он ясен, особенно твои вечные "+", читаемость кода понижается (новичкам).

Просьба не переходить на личности! Уважения к тебе это не прибавит.
[/offtopic]

Это сообщение отредактировал(а) nitr - 1.4.2007, 13:29


--------------------
PM   Вверх
Str!pe
Дата 2.4.2007, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: нет
Всего: 152



Так, а что я должен указать на странице в тегах... что я должен выставить в cами теги, что бы в них вышли нужные значения? Корче как мне рещультаты скрипта выставить в страницу?

Это сообщение отредактировал(а) Str!pe - 2.4.2007, 16:23


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
Nab
Дата 2.4.2007, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 25.3.2006
Где: Kiev

Репутация: 26
Всего: 37



Цитата(Str!pe @  2.4.2007,  16:06 Найти цитируемый пост)
Так, а что я должен указать на странице в тегах... что я должен выставить в cами теги, что бы в них вышли нужные значения? Корче как мне рещультаты скрипта выставить в страницу?

Да уж smile Вы почитайте чего про ссылки и про передачу параметров smile...

Код

sub get_my_time {
    my ($mday, $mon, $wday) = (localtime(time))[3,4,6];

    return {
        'mday' => $mday,
        'mon'  => qw( Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь )[$mon],
        'wday' => $wday,
    };
}

my $res = get_my_time;

print "День: $res->{'mday'}\n";
print "Месяц: $res->{'mon'}\n";
print "День недели: $res->{'wday'}\n";



Это сообщение отредактировал(а) Nab - 2.4.2007, 17:01


--------------------
 Чтобы правильно задать вопрос нужно знать больше половины ответа...
Perl Community 
FREESCO in Ukraine 
PM MAIL   Вверх
tishaishii
Дата 2.4.2007, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: 4
Всего: 8



Цитата(nitr @ 1.4.2007,  13:20)
[offtopic]
Цитата(tishaishii @  31.3.2007,  21:59 Найти цитируемый пост)
А ты читать умеешь или пока что только букву "А" освоил?

tishaishiiты всегда такой разговорчивый или просто прикидываешься?

Твой код вполне, но не всем новичкам он ясен, особенно твои вечные "+", читаемость кода понижается (новичкам).

Просьба не переходить на личности! Уважения к тебе это не прибавит.
[/offtopic]

А к тебе?
Кому-то что-то показалося, что каие-то возможности, которые часто необходимы использовать нельзя, дабы не казалось, что кто-то нарушает чью-то ранимую психику...
Согласись, это как-то ненормально.
PM MAIL ICQ Skype   Вверх
nitr
Дата 2.4.2007, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



[offtopic]
tishaishii, если что-то не нравится, пишите письма...
И не стоит о себе так уж жестко...
[/offtopic]


Str!pe, вы задаёте вопросы, не ответив и на наши smile Посмотрите внимательней, а ответов на задачу (как поняли многие) предостаточно...


--------------------
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1015 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.