Выбранный формат файла поддерживает только даты до 31 декабря 2049 project
Почему не меняется формат даты в Excel? Возможной причиной является конфликт форматов или блокировка стиля ячеек, неправильное выполнение работы или временный сбой в работе приложения. Для устранения попробуйте перезапустить программу или воспользуйтесь одним из приведенных в статье способов. Ниже рассмотрим основные причины и способы решения такой проблемы в Excel.
Причины и пути решения
Для решения проблемы нужно понимать, почему Эксель не меняет формат даты при любых попытках. К возможным причинам стоит отнести:
- Конфликт форматов и блокировка стиля ячейки.
- Несоответствие заданных стилей Excel.
- Неправильное выполнение работы.
- Временные сбои в работе программы.
- Неправильные региональные настройки.
В ситуации, когда не меняется дата в Эксель, можно воспользоваться одним из рассмотренных ниже решений.
- Выберите столбец даты в Excel.
- Зайдите в раздел «Данные» и выберите «Text to Columns».
- На первом экране поставьте переключатель «delimited».
- Кликните на кнопку «Далее».
- Снимите флажки-разделители и кликните на кнопку «Далее».
- В секции «Формат данных столбца» выберите «Дату».
- Выделите ячейки, где не меняется дата в Экселе.
- Жмите на сочетание Ctrl+1.
- В разделе «Формат ячеек» откройте вкладку «Число».
- В перечне «Категория» выберите требуемый раздел.
- Перейдите в «Тип» и укажите подходящий вариант форматирования в Excel. Для предварительного просмотра перейдите в раздел «Образец». Если сделанный вариант не устраивает, можно внести изменения и снова выполнить проверку - меняется отображение или нет.
- Используйте формулу: =DATE(MID(A1,FIND(",",A1)+1,5),MATCH(LEFT(A1,3),,0),MID(SUBSTITUTE(A1,","," "),5,5)) для перевода в REAL.
- Проверьте, что отображение в Excel меняется с учетом предпочтений.
Такой вариант может сработать в случае неправильных региональных настроек и невозможности изменения форматирования для дня, строки и времени. Представленную форму Excel можно сделать проще, если представить больше сведений о формате ввода. Но даже в таком случае все должно работать корректно. Кроме того, при желании сохранить часть времени можно воспользоваться формулой +RIGHT(A1,11).
- Загрузите лист Excel, где не меняется стиль отображения, на Гугл Док.
- Откройте файл с помощью электронной Гугл-таблицы.
- Выберите весь столбец с информацией.
- Установите тип формата для даты. На данном этапе можно выбрать любой подходящий вариант.
- Закройте электронную таблицу Гугл в формате .xlsx.
- Копируйте несколько ячеек, где не меняется форматирование даты в Excel, в блокнот.
- Жмите на Clear All.
- Вставьте содержимое ячейки в блокнот обратно в те же ячейки.
- Установите их в качестве текущего дня в нужном варианте и т. д.
Как поменять формат в Excel
Распространенная причина, почему софт не меняет дату в Экселе — неправильные действия пользователя. Для решения проблемы необходимо правильно сделать эту работу. Здесь существует несколько путей.
- Зайдите во вкладку «Главная».
- Перейдите в раздел «Число».
- Жмите на кнопку вызова диалогового окна (находится над строчкой «Число»).
- В списке «Категория» выберите нужный пункт.
- Перейдите в раздел «Тип» и установите нужный вариант отображения в Excel.
Тип форматирования, который начинается со звездочки, влияют за изменение параметров дня / времени, установленных на панели управления. В ином случае этого влияния нет. После этого необходимо выбрать нужный язык, который меняется с помощью специального переключателя. Выбор осуществляется из доступного перечня (русский язык предусмотрен).
- Зайдите во вкладку XLTools.
- В группе «Дата и время» откройте выпадающий перечень.
- Войдите в раздел «Изменить формат даты и времени».
- Задайте область поиска. Здесь указывается выбранный диапазон, рабочий лист, книга, открытые книги.
- Выберите подходящий вариант из перечня, принятый в стране и на нужном языке. По желанию задайте пользовательский формат.
- Кликните на кнопку «Готово».
Если Excel не меняет формат даты, это не повод беспокоиться. В большинстве случаев проблема связана с неправильным выполнением работы или временными сбоями в работе приложения. Перед тем, как предпринимать какие-либо шаги, попробуйте сохраниться и перезапустить Excel. Если же это не дало результата, проверьте возможность применения одного из рассмотренных выше методов.
В комментариях расскажите, приходилось ли вам сталкиваться с ситуацией, когда не работает дата в Эксель или не меняется ее форматирование. Поделитесь, какой из приведенных выше методов сработал, и какие еще варианты можно использовать.
Добрый день!
Используем последний релиз конфигурации БП 3.0.48.22
При выгрузке отчета о финансовых результатах выдаёт ошибку:
Версия формата: 5.06
Проверка по СППФД не пройдена. Данный документ должен быть подготовлен в формате 5.07.
Приказ ФНС России от 20.03.2017
Подскажите, есть ли информация, когда появится обновление БП с форматом 5.07?
(1) купите ИТС, зайдите на портал обновлений, в релизе 48.22 имеются внешние отчеты с новым форматом Но ведь мы установили релиз 3.0.48.22, полученный из доверительного источника.Куда установились внешние отчеты, где их нужно искать?
1С выпустила новую выгрузку бухотчетности в виде внешней обработки, доступной только на users.v8.1c.ru владельцам базовых версий и подписчикам ИТС. Спрашивайте у того же "доверительного источника" вместе с инструкцией по подключению, процедура подключения достаточно замысловатая.
Сбисы, астралы, фельдъегери и т.п. тоже понадобится обновить.
По личным наблюдениям, годовые отчеты лучше сдавать не позднее, чем за 2 недели до крайнего срока, иначе есть риск обновления формы, выгрузки и т.п. Каждый год ведь ситуация повторяется. А раньше и раз в 1-й,2-й и 4-й квартал повторялось.
Новый отчет с форматом 5.07 подключили.
У бухгалтерии важный вопрос в связи с этим.
Они заполнили регламентированную отчетность в старом отчете.
Сделали там много ручных исправлений.
Сейчас для выгрузки отчета в новом формате нужно заново заполнять бухгалтерскую отчетность в новом отчете.
Можно ли передать из старого отчета в новый заполненные и вручную исправленные формы, чтобы сдать их в формате 5.07?
Выбираем на форме отчета организацию и период, нажимаем "Создать" (других кнопок нет)
Открывается форма "Бухгалтерская отчетность" с незаполненными таблицами.
Как загрузить заполненные ранее в старом отчете таблицы? (10) Прямо тут и лежат. Там же в архиве текстовый документ с краткой инструкцией по подключению. Хотя пункт инструкции "найти элемент с наименованием, соответствующим внешнему отчету" в справочнике регламентированной отчетности "доставляет": откуда рядовому айтишнику знать такие подробности где там что ) Всем доброго дня! Там еще будет засада, хотя это может только у меня, при использовании внешнего файла к отчетности не прикрепляется пояснительная записка. Пишет включен безопасный режим. И как его выключить пока не понял. Вопрос решается через конфигуратор, заменяется стандартный отчет на этот внешний, ну и немного в модуль менеджера нужно внести изменения. У меня конфигурация с поддержки снята, а другим головная боль.
Внеший файл, кстати, лежит, там же где и релиз конфигурации. (11) Тоже самое как только прикрепляем пояснительную записку - ошибка! Напишите, пожалуйста, что меняли в модуле менеджера?
(13) Из модуля объекта внешнего файла перенес в модуль менеджера отчета в конфигурации строки:
Функция ДеревоФормИФорматов() Экспорт
Форма20160101 = ОпределитьФормуВДеревеФормИФорматов(ФормыИФорматы, "710099", '2015-04-06', "57н", "ФормаОтчета2011Кв4");
ОпределитьФорматВДеревеФормИФорматов(Форма20150101, "5.07");
А вообще, если получилось выгрузить в формате 5.06, тогда откройте файл в блокноте и меняете формат 5.06 на 5.07, тоже должно пройти.
Сравнивал файлы в двух форматах, более отличий не нашёл. Издеваются, однако. ))
(22)
(23)
Заново отчет создавали? После обновления формы созданные до обновления отчеты остаются по старой форме.
Грустно, но похоже, что у пользователей Бух 2.0 начались проблемы со своевременностью выпуска некоторых обновлений :(
(25) Да вроде бы файл то есть с обновлением для БП 2.0, только он не работает как надо. Может быть забыли номер версии просто поменять и в XML руками поставить 5.07, а остальное все как надо? в списке Регламентированные отчеты на против баланса указано слово внешний )) Может быть кому-нибудь поможет: сегодня я подключил внешний отчет, но у меня в выгружалось в формате 5.06, несмотря даже на то, что везде указывалось, что отчет внешний и я программу перезапускал. Я полез в отладчик и обнаружил, что программа формирует встроенный отчет, а не внешний. У меня был еще в справочнике Регламентированных отчетов отдельный отчет, у которого руками в названии было написано "внеш", хотя внутри он ссылался на встроенный отчет. Я заменил и в нем на внешний отчет - и все заработало. К тому же, следует не забывать, что даже если мы заменили отчет на внешний и перезашли в программу, бухгалтеру также нужно перезайти (29) Вижу у себя "Бухгалтерская отчетность (с 2011 года) (внешний)", "Бухгалтерская отчетность упрощенная (внешний)" и "Бухгалтерская отчетность в Росстат". Какой именно менять? (32) Я менял "Бухгалтерская отчетность (с 2011 года)", у меня он был не внешний, стал внешний.Менять походу ничего не надо, надо добавить
Для того, чтобы подключить НОВЫЙ внешний отчет необходимо:
1) открыть форму списка справочника "Регламентированные отчеты" (меню "Операции - Справочник - Регламентированые отчеты");
2) в папке "Бухгалтерская отчетность" добавить новый элемент.
3) в форме элемента необходимо установить переключатель "Использовать:" в положение "Файл", в качестве файла выбрать соответствующий внешний отчет;
4) нажать кнопку "ОК".
Для того, чтобы ОБНОВИТЬ используемый внешний отчет необходимо:
1) открыть форму списка справочника "Регламентированные отчеты" (меню "Операции - Справочник - Регламентированые отчеты");
2) в папке "Бухгалтерская отчетность" найти элемент с наименованием, соответствующим внешнему отчету, установить его в качестве текущего в списке и нажать кнопку "Изменить" на верхней командной панели (или клавишу F2);
3) в форме элемента необходимо установить переключатель "Использовать:" в положение "Файл", в качестве файла выбрать
соответствующий внешний отчет;
4) нажать кнопку "ОК".
Перед чтением см. новые уроки раздела "Важное", которые появились выше.
- Урок №
новая вкладка с new.code.mu
часть 1 - Урок №
новая вкладка с new.code.mu
часть 2 - Урок №
новая вкладка с new.code.mu
часть 3 - Урок №
новая вкладка с new.code.mu
часть 4 - Урок №
новая вкладка с new.code.mu
часть 5 - Урок №
новая вкладка ютуб
пагинация
Практика
Движок PHP
Продвинутые БД
Аутентификация
Практика
ООП и MVC
Абстрактные классы и интерфейсы
- Урок №
новая вкладка с new.code.mu
Абстрактные классы - Урок №
новая вкладка с new.code.mu
Введение в интерфейсы - Урок №
новая вкладка с new.code.mu
Применение интерфейсов - Урок №
новая вкладка с new.code.mu
Параметры методов в интерфейсе - Урок №
новая вкладка с new.code.mu
Объявление конструктора в интерфейсе - Урок №
новая вкладка с new.code.mu
Наследование интерфейсов друг от друга - Урок №
новая вкладка с new.code.mu
Интерфейсы и instanceof - Урок №
новая вкладка с new.code.mu
Реализация нескольких интерфейсов - Урок №
новая вкладка с new.code.mu
Наследование от класса и реализация интерфейса - Урок №
новая вкладка с new.code.mu
Константы в интерфейсах
Новый урок в данном разделе
Трейты
- Урок №
новая вкладка с new.code.mu
Введение в трейты - Урок №
новая вкладка с new.code.mu
Несколько трейтов - Урок №
новая вкладка с new.code.mu
Конфликты методов - Урок №
новая вкладка с new.code.mu
Модификаторы доступа - Урок №
новая вкладка с new.code.mu
Приоритет методов - Урок №
новая вкладка с new.code.mu
. текст, код Статические свойства - Урок №
новая вкладка с new.code.mu
. текст, код Статические методы - Урок №
новая вкладка с new.code.mu
Абстрактные методы - Урок №
новая вкладка с new.code.mu
Трейты в трейтах
ООП Магия
Практика
- Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Arr - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Ticket - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TicketCollection - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Date - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Interval - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс File
Практика: классы как набор методов
- Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс ArrayConvertor - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TagHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс FormHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TableHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс SessionShell - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс CookieShell - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс FileManipulator - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс databaseShell TODO cart корзина flash шаблонизатор роутер контроллер кеш логи фалидатор
Перед решением задач изучите теорию к данному уроку.
Примеры решения задач
Задача
Задача. Выведите 23 сентября 2031 года, 12:58:59 в формате timestamp.
Решение: воспользуемся функцией mktime (сентябрь - 9-тый месяц):
Можно также воспользоваться функцией strtotime, если представить нужную дату в формате 2031-09-23 12:58:59:
Задача
Задача. Найдите разницу между 1 сентября 2010 года, 7:25:59 и текущим моментом времени в секундах.
Решение: текущий момент времени в формате timestamp получим с помощью функции time, а timestamp для заданной даты - с помощью функции mktime. Отнимем одно число от второго и получим искомую разницу:
Задача . Функция date
Задача. Выведите текущую дату-время в формате '2025.12.31 12:59:59'.
Решение: воспользуемся функцией date, передав ей управляющие команды в таком порядке: год (команда Y), потом точку как символ, потом месяц (команда m), опять точку, день (команда d), час (команда H), двоеточие, минуту (команда i), секунду (команда s). Получится такая строка: 'Y.m.d H:i:s'. Подставим ее в функцию date:
Задача . Функция date
Задача. Выведите 1-го сентября текущего года в формате '2021.09.01'.
Решение: для начала с помощью функции mktime преобразуем 1-го сентября текущего года в формат timestamp. Мы это делаем для того, чтобы подставить найденное число вторым параметром в функцию date (а первым параметром для date мы укажем формат вывода).
Так как требуется текущий год, то последний параметр (год) для mktime мы не указываем - тогда возьмется текущий год:
Ну, а теперь подставим найденный timestamp в функцию date:
Задача . Функция date. Вывод дня недели словом
Задача. Узнайте, какой день недели (словом) был 1 сентября 2010 года.
Решение: решение аналогично предыдущей задаче, только формат вывода для функции date мы сделаем в таком виде: 'w'. В этом случае date вернет нам число, соответствующее дню недели за заданную дату (0 - воскресенье, 1 - понедельник и так далее):
Кстати, если бы мы хотели узнать, какой день недели сегодня - мы бы просто не передавали второй параметр функции date (тогда бы взялся текущий момент времени и, соответственно, вывелась бы 'w' за текущий день).
Продолжим решать нашу задачу: мы вывели номер дня недели, а по задаче его следует вывести словом. Для этого составим массив дней недели $week и с его помощью выведем то, что нам нужно. Вот этот массив:
Совместим теперь то, что вернет нам date, с нашим массивом $week:
Задача . Преобразование форматов
Задача. Дана дата в формате '31-12-2025'. С помощью функций mktime и explode переведите эту дату в формат timestamp.
Решение: разобьем строку '31-12-2025' функцией explode в массив $arr:
В элементе $arr[0] будет лежать день, в элементе $arr[1] - месяц, в элементе $arr[2] - год. Подставим эти данные в функцию mktime (напоминаю, что она принимает данные в формате '. месяц-день-год', не '. день-месяц-год')
Задачи для решения
Timestamp: time и mktime
Для решения задач данного блока вам понадобятся следующие функции: time, mktime.Выведите текущее время в формате timestamp.
Выведите 1 марта 2025 года в формате timestamp.
Выведите 31 декабря текущего года в формате timestamp. Скрипт должен работать независимо от года, в котором он запущен.
Найдите количество секунд, прошедших с 13:12:59 15-го марта 2000 года до настоящего момента времени.
Найдите количество целых часов, прошедших с 7:23:48 текущего дня до настоящего момента времени.
Функция date
Для решения задач данного блока вам понадобятся следующие функции: date.Выведите на экран текущий год, месяц, день, час, минуту, секунду.
Выведите текущую дату-время в форматах '2025-12-31', '31.12.2025', '31.12.13', '12:59:59'.
С помощью функций mktime и date выведите 12 февраля 2025 года в формате '12.02.2025'.
Создайте массив дней недели $week. Выведите на экран название текущего дня недели с помощью массива $week и функции date. Узнайте какой день недели был 06.06.2006, в ваш день рождения.
Создайте массив месяцев $month. Выведите на экран название текущего месяца с помощью массива $month и функции date.
Найдите количество дней в текущем месяце. Скрипт должен работать независимо от месяца, в котором он запущен.
Сделайте поле ввода, в которое пользователь вводит год (4 цифры), а скрипт определяет високосный ли год.
Сделайте форму, которая спрашивает дату в формате '31.12.2025'. С помощью функций mktime и explode переведите эту дату в формат timestamp. Узнайте день недели (словом) за введенную дату.
Сделайте форму, которая спрашивает дату в формате '2025-12-31'. С помощью функций mktime и explode переведите эту дату в формат timestamp. Узнайте месяц (словом) за введенную дату.
Сравнение дат
Сделайте форму, которая спрашивает две даты в формате '2025-12-31'. Первую дату запишите в переменную $date1, а вторую в $date2. Сравните, какая из введенных дат больше. Выведите ее на экран.
На strtotime
Для решения задач данного блока вам понадобятся следующие функции: strtotime.Дана дата в формате '2025-12-31'. С помощью функции strtotime и функции date преобразуйте ее в формат '31-12-2025'.
Сделайте форму, которая спрашивает дату-время в формате '2025-12-31T12:13:59'. С помощью функции strtotime и функции date преобразуйте ее в формат '12:13:59 31.12.2025'.
Прибавление и отнимание дат
Для решения задач данного блока вам понадобятся следующие функции: date_create, date_modify, date_format.В переменной $date лежит дата в формате '2025-12-31'. Прибавьте к этой дате 2 дня, 1 месяц и 3 дня, 1 год. Отнимите от этой даты 3 дня.
Задачи
Узнайте сколько дней осталось до Нового Года. Скрипт должен работать в любом году.
Сделайте форму с одним полем ввода, в которое пользователь вводит год. Найдите все пятницы 13-е в этом году. Результат выведите в виде массива дат.
Перед чтением см. новые уроки раздела "Важное", которые появились выше.
- Урок №
новая вкладка с new.code.mu
часть 1 - Урок №
новая вкладка с new.code.mu
часть 2 - Урок №
новая вкладка с new.code.mu
часть 3 - Урок №
новая вкладка с new.code.mu
часть 4 - Урок №
новая вкладка с new.code.mu
часть 5 - Урок №
новая вкладка ютуб
пагинация
Практика
Движок PHP
Продвинутые БД
Аутентификация
Практика
ООП и MVC
Абстрактные классы и интерфейсы
- Урок №
новая вкладка с new.code.mu
Абстрактные классы - Урок №
новая вкладка с new.code.mu
Введение в интерфейсы - Урок №
новая вкладка с new.code.mu
Применение интерфейсов - Урок №
новая вкладка с new.code.mu
Параметры методов в интерфейсе - Урок №
новая вкладка с new.code.mu
Объявление конструктора в интерфейсе - Урок №
новая вкладка с new.code.mu
Наследование интерфейсов друг от друга - Урок №
новая вкладка с new.code.mu
Интерфейсы и instanceof - Урок №
новая вкладка с new.code.mu
Реализация нескольких интерфейсов - Урок №
новая вкладка с new.code.mu
Наследование от класса и реализация интерфейса - Урок №
новая вкладка с new.code.mu
Константы в интерфейсах
Новый урок в данном разделе
Трейты
- Урок №
новая вкладка с new.code.mu
Введение в трейты - Урок №
новая вкладка с new.code.mu
Несколько трейтов - Урок №
новая вкладка с new.code.mu
Конфликты методов - Урок №
новая вкладка с new.code.mu
Модификаторы доступа - Урок №
новая вкладка с new.code.mu
Приоритет методов - Урок №
новая вкладка с new.code.mu
. текст, код Статические свойства - Урок №
новая вкладка с new.code.mu
. текст, код Статические методы - Урок №
новая вкладка с new.code.mu
Абстрактные методы - Урок №
новая вкладка с new.code.mu
Трейты в трейтах
ООП Магия
Практика
- Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Arr - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Ticket - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TicketCollection - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Date - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс Interval - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс File
Практика: классы как набор методов
- Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс ArrayConvertor - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TagHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс FormHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс TableHelper - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс SessionShell - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс CookieShell - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс FileManipulator - Урок №
новая вкладка с new.code.mu
. текст, код Практика: класс databaseShell TODO cart корзина flash шаблонизатор роутер контроллер кеш логи фалидатор
Перед решением задач изучите теорию к данному уроку.
Примеры решения задач
Задача
Задача. Выведите 23 сентября 2031 года, 12:58:59 в формате timestamp.
Решение: воспользуемся функцией mktime (сентябрь - 9-тый месяц):
Можно также воспользоваться функцией strtotime, если представить нужную дату в формате 2031-09-23 12:58:59:
Задача
Задача. Найдите разницу между 1 сентября 2010 года, 7:25:59 и текущим моментом времени в секундах.
Решение: текущий момент времени в формате timestamp получим с помощью функции time, а timestamp для заданной даты - с помощью функции mktime. Отнимем одно число от второго и получим искомую разницу:
Задача . Функция date
Задача. Выведите текущую дату-время в формате '2025.12.31 12:59:59'.
Решение: воспользуемся функцией date, передав ей управляющие команды в таком порядке: год (команда Y), потом точку как символ, потом месяц (команда m), опять точку, день (команда d), час (команда H), двоеточие, минуту (команда i), секунду (команда s). Получится такая строка: 'Y.m.d H:i:s'. Подставим ее в функцию date:
Задача . Функция date
Задача. Выведите 1-го сентября текущего года в формате '2021.09.01'.
Решение: для начала с помощью функции mktime преобразуем 1-го сентября текущего года в формат timestamp. Мы это делаем для того, чтобы подставить найденное число вторым параметром в функцию date (а первым параметром для date мы укажем формат вывода).
Так как требуется текущий год, то последний параметр (год) для mktime мы не указываем - тогда возьмется текущий год:
Ну, а теперь подставим найденный timestamp в функцию date:
Задача . Функция date. Вывод дня недели словом
Задача. Узнайте, какой день недели (словом) был 1 сентября 2010 года.
Решение: решение аналогично предыдущей задаче, только формат вывода для функции date мы сделаем в таком виде: 'w'. В этом случае date вернет нам число, соответствующее дню недели за заданную дату (0 - воскресенье, 1 - понедельник и так далее):
Кстати, если бы мы хотели узнать, какой день недели сегодня - мы бы просто не передавали второй параметр функции date (тогда бы взялся текущий момент времени и, соответственно, вывелась бы 'w' за текущий день).
Продолжим решать нашу задачу: мы вывели номер дня недели, а по задаче его следует вывести словом. Для этого составим массив дней недели $week и с его помощью выведем то, что нам нужно. Вот этот массив:
Совместим теперь то, что вернет нам date, с нашим массивом $week:
Задача . Преобразование форматов
Задача. Дана дата в формате '31-12-2025'. С помощью функций mktime и explode переведите эту дату в формат timestamp.
Решение: разобьем строку '31-12-2025' функцией explode в массив $arr:
В элементе $arr[0] будет лежать день, в элементе $arr[1] - месяц, в элементе $arr[2] - год. Подставим эти данные в функцию mktime (напоминаю, что она принимает данные в формате '. месяц-день-год', не '. день-месяц-год')
Задачи для решения
Timestamp: time и mktime
Для решения задач данного блока вам понадобятся следующие функции: time, mktime.Выведите текущее время в формате timestamp.
Выведите 1 марта 2025 года в формате timestamp.
Выведите 31 декабря текущего года в формате timestamp. Скрипт должен работать независимо от года, в котором он запущен.
Найдите количество секунд, прошедших с 13:12:59 15-го марта 2000 года до настоящего момента времени.
Найдите количество целых часов, прошедших с 7:23:48 текущего дня до настоящего момента времени.
Функция date
Для решения задач данного блока вам понадобятся следующие функции: date.Выведите на экран текущий год, месяц, день, час, минуту, секунду.
Выведите текущую дату-время в форматах '2025-12-31', '31.12.2025', '31.12.13', '12:59:59'.
С помощью функций mktime и date выведите 12 февраля 2025 года в формате '12.02.2025'.
Создайте массив дней недели $week. Выведите на экран название текущего дня недели с помощью массива $week и функции date. Узнайте какой день недели был 06.06.2006, в ваш день рождения.
Создайте массив месяцев $month. Выведите на экран название текущего месяца с помощью массива $month и функции date.
Найдите количество дней в текущем месяце. Скрипт должен работать независимо от месяца, в котором он запущен.
Сделайте поле ввода, в которое пользователь вводит год (4 цифры), а скрипт определяет високосный ли год.
Сделайте форму, которая спрашивает дату в формате '31.12.2025'. С помощью функций mktime и explode переведите эту дату в формат timestamp. Узнайте день недели (словом) за введенную дату.
Сделайте форму, которая спрашивает дату в формате '2025-12-31'. С помощью функций mktime и explode переведите эту дату в формат timestamp. Узнайте месяц (словом) за введенную дату.
Сравнение дат
Сделайте форму, которая спрашивает две даты в формате '2025-12-31'. Первую дату запишите в переменную $date1, а вторую в $date2. Сравните, какая из введенных дат больше. Выведите ее на экран.
На strtotime
Для решения задач данного блока вам понадобятся следующие функции: strtotime.Дана дата в формате '2025-12-31'. С помощью функции strtotime и функции date преобразуйте ее в формат '31-12-2025'.
Сделайте форму, которая спрашивает дату-время в формате '2025-12-31T12:13:59'. С помощью функции strtotime и функции date преобразуйте ее в формат '12:13:59 31.12.2025'.
Прибавление и отнимание дат
Для решения задач данного блока вам понадобятся следующие функции: date_create, date_modify, date_format.В переменной $date лежит дата в формате '2025-12-31'. Прибавьте к этой дате 2 дня, 1 месяц и 3 дня, 1 год. Отнимите от этой даты 3 дня.
Задачи
Узнайте сколько дней осталось до Нового Года. Скрипт должен работать в любом году.
Сделайте форму с одним полем ввода, в которое пользователь вводит год. Найдите все пятницы 13-е в этом году. Результат выведите в виде массива дат.
Читайте также: