` | PARSER | документация |

parser

faqfaq
авторыавторы
документациядокументация

в действиив действии
куда говоритькуда говорить
жаргонжаргон

скачатьскачать

примерыпримеры
форумфорум

документация

3. Операторы Парсера

3.13. Календарь

3.13.1. Получение текущей даты. Оператор date

Формат вызова

^date[форматная_строка]

Аргументы

форматная_строка — строка, определяющая форму представления даты.

Описание

Оператор возвращает текущую дату и/или текущее время. Способ представления даты и времени определяется форматной строкой.

В форматной строке специальные обозначения, предваряемые символом % (знак процента), заменяются значениями даты или времени. Остальной текст оставляется без изменений. Если необходимо использовать символ %, он удваивается.

Специальные обозначения:

  • %a, %A — английское название дня недели, сокращенное или полное соответственно.
  • %b, %B — английское название месяца, сокращенное или полное соответственно.
  • %c — дата и время.
  • %C — дата и время в длинном формате представления времени и даты.
  • %d — день месяца (01-31).
  • %H — час (00-23).
  • %I — час (00-12).
  • %j — номер текущего дня года (001-366).
  • %m — номер месяца (01-12).
  • %M — минута (00-59).
  • %p — указатель AM или PM при двенадцатичасовом обозначении.
  • %S — секунда (00-59).
  • %w — номер дня недели (0-6); нулевой — воскресенье, шестой — суббота.
  • %y — две последние цифры номера года (00-99).
  • %Y — год (например, 2001).

Примеры

Вызов ^date[100%%-точное время. Дата: %d.%m.%Y. Время: %H:%M:%S] даст примерно следующий результат:

100%-точное время. Дата: 03.03.2001. Время: 14:31:19

3.13.2. Загрузка в таблицу даты и времени. Оператор loadtimestamp

Формат вызова

^loadtimestamp[]

^loadtimestamp[дата_время]

Аргументы

дата_время — дата и время в формате year.month.day hour:min.

Описание

Оператор загружает в текущую таблицу указанные дату и время. Столбцам таблицы присваиваются имена year, month, day, hour и min. Если аргумент не указан, загружаются текущие дата и время.

Примеры

^loadtimestamp[2000.10.28 16:45]

3.13.3. Загрузка в таблицу календаря на месяц. Оператор calendar

Формат вызова

^calendar[тип_календаря;год;месяц]

Аргумент

тип_календаря — тип календаря (“английский” или “русский”).

год, месяц — эти аргументы задают месяц, календарь которого нужно загрузить в таблицу.

Описание

Оператор загружает в текущую таблицу календарь указанного месяца. Календарь представляется в виде семи столбцов, соответствующих дням недели. Если аргумент тип_календаря имеет значение month, то первым днем недели считается понедельник, а если montheng — воскресенье.

Примеры

Вызов ^calendar[month;2001;03] загрузит в текущую таблицу следующие данные.

         01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

На пересечении первой строки и первых трех столбцов, а также на пересечении последней строки и последнего столбца — пустые значения.

Следующий фрагмент кода выводит календарь со ссылками на новости по датам за текущий месяц.

^context[month;

^calendar[
month;^date[%Y];^date[%m]]
<TT>
^menu[^for[i;0;6;
           ^ifdef[^item[^var[
i]];
               ^var[
params;y=^date[%Y]&m=^date[%m]&d=^item[^var[i]]]
                <A HREF="newsdetails.html?^var[params]">^item[^var[i]]</A>;
                &nbsp^;&nbsp^;]&nbsp^;
      ];
      <BR>
]
</TT>

]

3.13.4. Загрузка в таблицу календаря на неделю. Оператор calendar

Формат вызова

^calendar[тип_календаря;год;месяц;день]

Аргументы

тип_календаря — тип календаря (“английский” или “русский”).

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

Описание

Оператора загружает в текущую таблицу календарь на неделю, представленный в виде трех столбцов. Имена столбцов: year, month и day. Неделя, для которой генерируется календарь, определяется указанными годом, месяцем и  числом. Если аргумент тип_календаря имеет значение week, то первым днем недели считается понедельник, а если weekeng — воскресенье.

Примеры

Вызов ^calendar[week;2000;08;3] загрузит в текущую таблицу следующие данные.

2000   07     31
2000   08     01
2000   08     02
2000   08     03
2000   08     04
2000   08     05
2000   08     06

3.13.5. Сдвиг даты на один день, месяц или год. Оператор dateoffset

Формат вызова

^dateoffset[сдвиг_год;сдвиг_месяц;сдвиг_день]

Аргументы

сдвиг_год — количество прибавляемых или вычитаемых лет.

сдвиг_месяц — количество прибавляемых или вычитаемых месяцев.

сдвиг_день — количество прибавляемых или вычитаемых дней.

Описание

Оператор изменяет дату в формате оператора loadtimestamp в текущей таблице на один год, месяц или день, в зависимости от того, какой из аргументов указан. Из трех возможных может присутствовать только один аргумент, он может быть равен только 1 или -1.

Примеры

^loadtimestamp[2000.07.31]
^dateoffset[;;
1]
^item[
year].^item[month].^item[day]

Обработка приведенного выше фрагмента даст результат 2000-08-01.


E-mail: mailbox@parser.ruCopyright © 1997-2001 Студия Артемия Лебедева
`