Анимация
JavaScript
|
Главная Библионтека
- номер месяца; - название месяца, трехсимвольная аббревиатура, например, Jan; - номер дня в месяце, всегда 2 цифры (первая может быть 0); номер дня в месяце без предваряющего нуля; день недели, 0 соответствует воскресенью, 1 - понедельнику, и т. д.; - день недели, текстовое полное название, например, Friday; - день недели, английское трехсимвольное сокращение, например, Fri; am или pm; AM или PM; часы, 12-часовой формат; - часы, 24-часовой формат; минуты; секунды; - английский числовой суффикс (nd, th и т. д.). Те символы, которые не были распознаны как форматирующие, подставляются в результирующую строку "как есть". Впрочем, не советую этим злоупотреблять, поскольку довольно мало английских слов не содержат ни одной из перечисленных выше букв. Как видите, набор символов форматирования весьма и весьма богат. Вот пример применения функции date() : echo date("l dS of F Y h:i:s A"); echo date("Сегодня d.m.Y"); echo date("Этот файл датирован d.m.Y",filectime("myfile")); Остается еще отметить, что формат выдачи для таких символов, как F (название месяца), зависит от текущих настроек локали (см. функцию setlocale()) и вполне может быть названием месяца на родном языке пользователя. int checkdate(int $month, int $day, int $year) Эта функция проверяет, существует ли дата, переданная ей в параметрах: вначале ищется месяц, затем - день, и, наконец, - год. Конкретнее, checkdate() проверяет следующее: □ год должен быть между 1900 и 32 767 включительно; □ месяц обязан принадлежать диапазону от 1 до 12; □ число должно быть допустимым для указанного месяца и года (если год високосный). Григорианский календарь Григорианский календарь - это как раз тот самый календарь, который мы постоянно используем в своей жизни. В России он был введен Петром I в 1700 году. Описываемые далее три функции представляют большой интерес, если вам понадобится автоматически формировать календари в сценариях. Все они имеют дело с так называемым Julian Day Count (JDC). Что это такое? Каждой дате соответствует свой JDC. Ведь, фактически, JDC - это всего лишь число дней, прошедших с определенной даты (кажется, где-то с 4714-го года до нашей эры). Зачем это нужно? Например, нам заданы две даты в формате "дд.мм.гггг". Нужно вычислить количество дней между этими датами. Поставленная задача как раз легко решается через перевод обеих дат в JDC и определение разности получившихся величин. int GregorianToJD(int $month, int $day, int $year) Преобразует дату в формат JDC. Допустимые значения года для григорианского календаря - от 4714 года до нашей эры до 9999 года нашей эры. string JDToGregorian(int $julianday) Функция очень полезна, например, при автоматическом формировании HTML-календарика для указанного месяца и года. В самом деле, мы можем определить, какие числа в месяце "не существуют", и для них вместо номера проставить пустое место. array getdate(int $timestamp) Возвращает ассоциативный массив, содержащий данные об указанном времени. В массив будут помещены следующие ключи и значения: □ seconds - секунды; □ minutes - минуты; □ hours - часы; □ mday - число; □ wday - день недели, число; □ mon - номер месяца; □ year - год; □ yday - номер дня с начала года; □ weekday - полное название дня недели, например, Friday; □ month - полное название месяца, например, January. В общем-то, всю эту информацию можно получить и с помощью функции date() , но тут разработчики PHP предоставляют нам альтернативный способ. Преобразует дату в формате JDC в строку, выглядящую как месяц/число/год. Наверняка затем вы захотите разбить эту строку на составляющие, чтобы работать с ними по отдельности. Для этого воспользуйтесь функцией explode() : $jd = GregorianToJD(10,11,1970); echo "$jd<br>\n"; $gregorian = JDToGregorian($jd); echo "$gregorian<br>\n"; $list=explode($gregorian,"/"); mixed JDDayOfWeek(int $julianday, int $mode) Последняя функция этой серии - JDDayOfWeek() - тоже совершенно незаменима: она возвращает день недели, на который приходится указанная JDC-дата. Фактически, это единственное, чего нам не хватало бы для формирования календарика. Параметр $mode задает, в каком виде должен быть возвращен результат: □ 0 - номер дня недели (0 - воскресенье, 1 - понедельник, и т. д.); □ 1 - английское название дня недели; □ 2 - сокращение английского названия дня недели. В PHP существует еще множество функций для работы с другими календарями - в том числе с Республиканским, Юлианским и т. д. Объем книги не позволяет привести здесь их описания. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 [ 93 ] 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 |