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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> convert date->string, format('yymmdd') 
V
    Опции темы
izver84
Дата 2.4.2010, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Здрасте.
Извините за нюбский вопрос.
Мне нужно конвертировать дату в строку.

Формат строки 'yymmdd'.
Например  сегодня  2 апреля  2010 года

Результат  '100402'
Как это правильно сделать? smile  




--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
ginnie
Дата 2.4.2010, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 38
Всего: 49



izver84, а если подумать? Создаем хэш месяцев и конвертируем:
Код

my %monthes = ('января' => 1, 'февраля' => 2, 'марта' => 3, 'апреля' => 4, 'мая' => 5,
 'июня' => 6, 'июля' => 7, 'августа' => 8, 'сентября' => 9, 'октября' => 10, 'ноября' => 11, 'декабря' => 12);
my $orig_date = '2 апреля  2010 года';
my @date_parts = split /\s+/, $orig_date;
$date_parts[1] = $monthes{$date_parts[1]};
$date_parts[2] -= 2000;
my $conv_date = sprintf('%0.2d' x 3, @date_parts[2,1,0]);


Это сообщение отредактировал(а) ginnie - 2.4.2010, 12:05


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
izver84
Дата 6.4.2010, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



решил
Код

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time()); 
$mont=$mon+1;
$dayt=$mday;
if ($mont<10) {
$smont="0$mont";
}
else {
$smont="$mont";
}

if ($dayt<10){
$sday="0$dayt";
}else {
$sday="$dayt";
}
$year += 1900;
$date="$year$smont$sday";
$date=substr($date,2);





--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно. 
PM MAIL   Вверх
NuINu
Дата 6.4.2010, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

Репутация: 5
Всего: 6



наверное даже работает. попробуйте найти что нибудь полезное в коде ginnie - код сократиться процентов на 90

да забыл сказать, работая в перле без обявлений типа my
и без прагмы warnings и strict вы зарабатываете себе геморой появляющийся от простейших синтаксических ошибок (типа неправильно набил имя переменной)
используйте их, сэкономите кучу времени

Это сообщение отредактировал(а) NuINu - 6.4.2010, 11:46
PM MAIL   Вверх
mvsgt
Дата 6.4.2010, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Правильно - это так:

Код

#!perl -w
use strict;
use Time::CTime;
print strftime( '%y%m%d', localtime(time));

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


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

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


 




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


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

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