Что такое код strtotime


Содержание

Как написать код без «strtotime»

Как мне написать этот код без strtotime преобразование.

Дата рождения поступила из базы данных. Я хочу отобразить ее в d/m/y формат

Решение

Несмотря на то, что он кажется многословным, он делает код более явным. Кто-то, кто читает этот код на первый взгляд, может понять, что происходит.
Но если вы просто озабочены кратким кодом, все в порядке с использованием strtotime ().

Также вы можете отформатировать дату с помощью SQL (MySQL):

Несмотря на это имеет влияние на кеш.

Другие решения

Вы можете использовать Carbon простое расширение PHP. Подробнее здесь Нажмите, чтобы найти более подробную информацию

Почему strtotime() и time() дают разное время?

Сразу приведу пример кода:

Вот полученные результаты:

Т.е. разница ровно час.

Случайно наткнулся, проверял чего тест стал падать, там дата проверялась.

Интересно, что вчера и позавчера, неделю и месяц назад возвращаемое время было абсолютно одинаковым!

UPD: Временная зона установлена «Europe/London».

1 ответ 1

В ночь с субботы на воскресенье 27 марта часы переводятся на час назад. Временная зона была установлена «Europe/London».

Т.к. сегодня стукнуло 21 марта, то через неделю уже будет 28 марта. И соответственно время strtotime(‘+1 week’) уже выдаёт результат с учётом перевода времени на час назад.

У нас в Беларуси уже отменили перевод на летнее/зимнее время. В России тоже. На временной зоне «Europe/Minsk» и «Europe/Moscow» возвращаемое время одинаковое в обоих случаях.

В общем, проблема различий во времени связана с переводом времени на час для указанной временной зоны «Europe/London».

Функция strtotime учитывает часовой пояс, а time — нет, возвращает unix-timestamp.

strtotime

(PHP 3>= 3.0.12, PHP 4)

strtotime — разбирает английское текстовое описание datetime в UNIX timestamp.

Описание

int strtotime (string time [, int now])

Функция ожидает строку, содержащую английский формат даты, и пытается разобрать этот формат в UNIX timestamp относительно timestamp, заданного в параметре now, или относительно текущего времени, если ничего не задано. При неудаче возвращает -1.

Поскольку strtotime() ведёт себя в соответствии с GNU-синтаксисом даты, просмотрите страницу GNU-учебника Date Input Formats. Там описан правильный синтаксис параметра time.

Пример 1. strtotime()
Пример 2. Проверка при неудаче

Примечание: диапазон правильных значений timestamp обычно: от Fri, 13 Dec 1901 20:45:54 GMT до Tue, 19 Jan 2038 03:14:07 GMT. (Это даты, соответствующие минимальным и максимальным значениям для 32-битного знакового integer.)

strtotime — Преобразует текстовое представление даты на английском языке в метку времени Unix

(PHP 4, PHP 5, PHP 7)

strtotime — Преобразует текстовое представление даты на английском языке в метку времени Unix

Описание

Первым параметром функции должна быть строка с датой на английском языке, которая будет преобразована в метку времени Unix (количество секунд, прошедших с 1 января 1970 г. 00:00:00 UTC) относительно метки времени, переданной в now , или текущего времени, если аргумент now опущен.

Каждый параметр функции использует временную метку по умолчанию, пока она не указана в этом параметре напрямую. Будьте внимательны и не используйте различные временные метки в параметрах, если на то нет прямой необходимости. Обратите внимание на date_default_timezone_get() для задания временной зоны различными способами.


Список параметров

Строка даты/времени. Объяснение корректных форматов дано в Форматы даты и времени.

Временная метка, используемая в качестве базы для вычисления относительных дат.

Возвращаемые значения

Возвращает временную метку в случае успеха, иначе возвращается FALSE . До версии PHP 5.1.0 в случае ошибки эта функция возвращала -1.

Ошибки

Каждый вызов к функциям даты/времени при неправильных настройках временной зоны сгенерирует ошибку уровня E_NOTICE , и/или ошибку уровня E_STRICT или E_WARNING при использовании системных настроек или переменной окружения TZ . Смотрите также date_default_timezone_set()

Список изменений

Теперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE .

Версия Описание
5.3.0 До версии PHP 5.3.0 относительные форматы времени, передаваемые параметру time функции strtotime() , такие как this week, previous week, last week и next week обрабатывались как 7-дневный период относительной текущей даты/времени, а не как недельный период от понедельника (Monday) до воскресенья (Sunday).
5.3.0 До версии PHP 5.3.0 24:00 не являлся корректным форматом, и при его использовании strtotime() возвращала FALSE .
5.2.7 В версиях PHP 5 до 5.2.7 при запросе временной метки дня недели, являвшегося первым днем месяца, ошибочно прибавлялась одна неделя. Эта ошибка была исправлена в версии 5.2.7 и следующих за ней версиях.
5.1.0 Теперь в случае ошибки возвращает FALSE , ранее возвращалась -1.
5.1.0
5.0.2 В PHP 5 до версии 5.0.2 «now» и другие относительные времена вычислялись неверно относительно полуночи текущего дня. Это отличается от поведения текущих версий, где вычисление производится корректно относительно текущего времени.
5.0.0 Стало возможным указывать микросекунды, но они не принимаются во внимание и будут проигнорированы.

Примеры

Пример #1 Пример использования функции strtotime()

Пример #2 Проверка ошибок

// до версии PHP 5.1.0 вместо false необходимо было сравнивать со значением -1
if (( $timestamp = strtotime ( $str )) === false ) <
echo «Строка ( $str ) недопустима» ;
> else <
echo » $str == » . date ( ‘l dS \o\f F Y h:i:s A’ , $timestamp );
>
?>

Примечания

Если количество лет указано двумя цифрами, то значения 00-69 будут считаться 2000-2069, а 70-99 — 1970-1999. Смотрите также замечания ниже о возможных различиях на 32-битных системах (допустимые даты заканчиваются 2038-01-19 03:14:07).

Корректным диапазоном временных меток обычно являются даты с 13 декабря 1901 20:45:54 UTC по 19 января 2038 03:14:07 UTC. (Эти даты соответствуют минимальному и максимальному значению 32-битового знакового целого).

До версии PHP 5.1.0, не все платформы поддерживают отрицательные метки времени, поэтому поддерживаемый диапазон дат может быть ограничен Эпохой Unix. Это означает, что даты ранее 1 января 1970 г. не будут работать в Windows, некоторых дистрибутивах Linux и нескольких других операционных системах.

В 64-битных версиях PHP корректный диапазон временных меток фактически бесконечен, так как 64 битов хватит для представления приблизительно 293 миллиарда лет в обоих направлениях.

Даты в формате m/d/y или d-m-y разрешают неоднозначность с помощью анализа разделителей их элементов: если разделителем является слеш (/), то дата интерпретируется в американском формате m/d/y, если же разделителем является дефис () или точка (.), то подразумевается использование европейского форматаd-m-y.

Чтобы избежать потенциальной неоднозначности, рекомендуется использовать даты в формате стандарта ISO 8601 (YYYY-MM-DD) либо пользоваться функцией DateTime::createFromFormat() там, где это возможно.

Не рекомендуется использовать эту функцию для математических операций. Целесообразней использовать DateTime::add() и DateTime::sub() начиная с PHP 5.3, или DateTime::modify() в PHP 5.2.

Смотрите также

  • Форматы даты и времени
  • DateTime::createFromFormat() — Создает и возвращает экземпляр класса DateTime, соответствующий заданному формату
  • checkdate() — Проверяет корректность даты по григорианскому календарю
  • strptime() — Разбирает строку даты/времени сгенерированную функцией strftime

Функция Strtotime

Функция Strtotime преобразует текстовое представление даты на английском языке в метку времени Unix.
Параметр Time являет собой строку с датой или временем на английском языке, которая будет преобразована в метку времени Unix (количество секунд, прошедших с 1 января 1970 года 00:00:00 UTC) относительно метки времени, переданной в Now, или текущего времени, если аргумент Now опущен.

Параметр Now — временная метка, используемая в качестве базы для вычисления относительных дат.

Функция Strtotime возвращает временную метку в случае успеха, иначе возвращается FALSE.

Код и вывод strtotime

Никак не могу сообразить как написать код и вывести его на страницу.

Моя задача написать на странице дату и завиксированное время 21:00 следующего воскресения, причем даже если сегодня суббота или нынещнее воскресение.

26.02.2020, 00:26

Strtotime
$date = date(«Y-m-d»); // Дата echo «Сегодня $date
«; $weekday = date(‘l’.

False с strtotime
Добрый день, уважаемые пользователи ! Подскажите пожалуйста, передаю в функцию strtotime дату.

strtotime больше суток
функция strtotime переводит текст(дату) в числа, все работает идеально если время не больше 24.

strtotime к произвольной дате
Здравствуйте! Вот так я прибавляю 1 год к текущей дате: $date_db = date(«Y-m-d», strtotime(‘+.


по датам strtotime и date
просто объясните if ($dateLastPostUnix > $datePublication) < echo.

strtotime () считается вредным?

Похоже, что многие люди борются с проблемами даты / времени на PHP, и неизбежно многие принятые ответы имеют тенденцию « Использовать strtotime таким образом ».

Действительно ли это лучший способ направить людей на проблемы с датой? Я начинаю чувствовать, что strtotime – это своего рода отличный трюк, на который не обязательно следует полагаться на важные расчеты даты и времени, а по характеру его на произвольные строки он кажется потенциальным источником ошибок, для прогнозирования поведения. Его неспособность дифференцировать между MM / DD / YYYY и DD / MM / YYYY – это своего рода большое дело, нет?

StackOverflow обычно очень хорош в продвижении хороших практик (я редко вижу разговор mysql_real_escape_string , который не говорит кому-то «Использовать PDO вместо этого»).

Но, по-видимому, не существует приемлемой нормы в вопросах даты на PHP, и многие люди падают на костыль, который является strtotime .

Итак, что мы должны делать по этому поводу, если что-нибудь вообще? Есть ли лучшая норма, которую мы должны применять для людей, задающих такие вопросы, как «Как добавить 1 неделю на X», или «Как мне преобразовать этот формат даты в этот другой формат даты?»

Каков наилучший, самый надежный способ решения проблем Дата / Время, таких как strtotime , но слишком часто не удается?

Я начну, сказав, что я большой сторонник использования объекта DateTime, который позволяет использовать функцию DateTime::createFromFormat() . Объект DateTime делает код более читабельным и избегает необходимости делать всю временную метку Unix, используя 60 * 60 * 24, чтобы продвигать даты.

При этом произвольная строка, которую принимает strtotime (), не очень трудно предсказать. Поддерживаемые форматы даты и времени содержат список поддерживаемых форматов.

В соответствии с вашим примером неспособности дифференцироваться между MM / DD / YYYY и DD / MM / YYYY, он различается на основе форматов даты . Даты, которые используют слэши, всегда читаются как американский формат. Таким образом, дата в формате 00/00/0000 всегда будет считаться MM / DD / YYYY. Альтернативно использование тире или периодов будет DMY. например, 00-00-0000 всегда будет считаться DD-MM-YYYY.

Вот некоторые примеры:

Как вы можете видеть, несколько ключевых примеров: 25/12/2013 и 12.25.2013 которые будут действительны при чтении с противоположным форматом, однако они возвращают false поскольку они неверны в соответствии с форматами даты и времени. ,

Таким образом, вы можете видеть, что поведение вполне предсказуемо. Как всегда, если вы получаете дату от использования ввода, вы должны сначала подтвердить этот ввод. Никакой метод не будет работать, если вы сначала не проверяете ввод.

Если вы хотите быть очень конкретным в отношении даты, которую вы читаете, или формат, который вы даете, не поддерживается, тогда я рекомендую использовать DateTime::createFromFormat() .

strtotime() предлагается, потому что он был в PHP с v4.x дней, поэтому в основном гарантированно будет доступно. Доступность превосходит нечетное время (без каламбура), что он обернется и укусит вас в прикладе с неверно обработанной датой.

В текущем «правильном» способе делать математику с датой будет использовать объекты DateTime / DateInterval, но это более свежие дополнения к PHP (5.2 / 5.3, я думаю) и, следовательно, не всегда доступны – есть много хостов, которые еще есть на 4 .Икс.

Я часто использую strtotime() . Дело в том, что вы не должны использовать его как костыль, но вы должны знать его ограничения.

Если вы хотите применить стандарт, то я полагаю, что вы должны пойти с mktime() основе c. Например, чтобы получить 1 неделю спустя:

Проблема в том, что вы должны выбрать строгий формат данных для ваших значений даты / времени / зоны (ISO8601: 2004) на всех уровнях вашего приложения и найти функцию PHP, которая лучше всего обрабатывает этот формат: DateTime::createFromFormat().

IMHO имеет разные форматы даты / времени / зоны для пользовательского интерфейса (уровень GUI), пытаясь угадать ввод даты в функции PHP, означает, что вы не выполнили какую-либо дезинфекцию ваших данных со стороны клиента (возможно, с помощью Javascript?) И вы передаете данные из своего веб-формуляра в неизвестном формате.

Если формат даты / времени / зоны не соответствует стандарту ISO8601 на стороне сервера, вы просто отвергаете его, и вы!

Надеюсь это поможет!

Самый надежный способ расчета дат в PHP – это использовать временную метку.

Это правда, что он ограничен 32-битным целым числом, но использование объекта Date не является параметром при вводе некоторой нечетной среды, например PHP 4.

Чтобы убедиться, что вы получите наиболее правильное поведение, я бы предложил использовать strptime (), чтобы получить метку времени с понятной для человека даты. Это лучше, чем strtotime () и strftime (), потому что он не пытается угадать, каков формат даты, а использует формат даты, который вы предоставляете.

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

Дерек Ретанс поговорил на Froscon 2010 в разделе «Расширенная обработка даты и времени в PHP» .

Найдите слайды в формате PDF по адресу http://derickrethans.nl/talks/time-froscon10.pdf . Они полагаются на недавний PHP (5.2 и выше), использование которых также должно быть лучшей практикой.

Это, безусловно, возможно в PHP: проверьте руководство strtotime, особенно этот комментарий .

Если у вас есть доступное соединение MySQL, SELECT DATE_ADD (‘2011-05-31’, INTERVAL 1 MONTH) будет менее избыточным, поскольку (правильная) функциональность уже реализована без необходимости реализовать ее самостоятельно.

Бложик

Искусство движения вперёд!

Коварная (?) функция strtotime() в PHP

Наверное, вы скажете — «да какая она коварная? просто знать её надо, да и всё!» — что-то в этом духе.

В общем, расскажу историю!

Один из моих проектов взаимодействует по API с одним сервисом. В некоторых API-запросах используется дата (промежуток времени) и эта дата передаётся в достаточно казуальном формате ‘Y-m-d’. Но есть нюанс (тоже достаточно казуальный)! Сервис, с которым взаимодействует мой проект, работает во временной зоне UTC, а мой проект во временной зоне UTC+3. И, разумеется, все данные, что мой проект отправляет и все данные, что мой проект получает, в которых содержится дата — конвертируются. Т.е. мой проект перед отправкой вычитает из отправляемых данных 3 часа, а при приёме — наоборот — прибавляет 3 часа.

У этого самого сервиса долгое время разрабатывалась вторая версия, более новая, на GraphQL’е, вся модная, крутая, быстрая! И одной из отличительных черт второй версии этого сервиса было то, что теперь дата должна передаваться в миллисекундах, т.е. в UNIX timestamp’е, помноженном на тысячу.


При интеграции со второй версией сервиса я повторял привычные мне преобразования даты, за тем исключением, что перед отправкой я ещё и переводил строковую дату формата ‘Y-m-d’ (разумеется, сконвертированную в UTC из моих UTC+3) посредством функции strtotime() в число. Так вот, данные на мои API-запросы постоянно возвращались странные, я никогда не получал того, что запросил. В ходе анализа присылаемых мной дат было выяснено, что я присылаю даты в формате UTC-3. Т.е. как будто бы я вычитаю из своих дат не 3 часа, а целых 6.

Разработчиками с той стороны мне было предложено просто перестать конвертировать мою дату, да и всё! Но я так не могу, мне необходимо понять!

Далее, я пошёл в Википедию прочесть о UNIX Timestamp’е то, что итак прекрасно знал и втыкая в статью некоторое время обратил внимание на следующее (выделил красным):

UNIX-время (англ. Unix time ) или POSIX-время — система описания моментов во времени, принятая в UNIX и других POSIX-совместимых операционных системах. Определяется как количество секунд, прошедших с полуночи (00:00:00 UTC ) 1 января 1970 года (четверг); время с этого момента называют «эрой UNIX» (англ. Unix Epoch ).

Т.е. на UTC. Но я не сразу понял в чём же дело (хотя понял, что разгадка близко).

Далее, я пошёл на PHP.net и почитал документацию к функции strtotime, которую, опять же, прекрасно знал и начал чувствовать, что разгадка ещё ближе…

(между тем, кстати, я опробовал кучу сервисов с конвертацией моего времени в миллисекундах в дату — и некоторые сервисы давали время корректное время, а некоторые — нет, но почему — ниже!)

Разумеется, я дебажил все значения дат у себя в коде: до, после, перед, в разных форматах и т.п. А на «той стороне» мне всё твердили, что мой проект присылает некорректную дату (а я, ещё и предположил, что проблема, может и на их стороне (за что потом извинился и за что мне стыдно) ?).

И тут меня осенило!

Дело в том, что любой вывод даты всегда осуществляется с использованием локальной временной зоны. Она у меня была в UTC+3 (разумеется). А вот функция strtotime всегда возвращает свое число (число прошедших секунд с 1 января 1970 года) в UTC! Т.е. я:

  1. Брал дату в строке, которая в UTC+3
  2. Вычитал из неё 3 часа и получал дату в строке в UTC+0
  3. Конвертировал её в UNIX timestamp и затем в миллисекунды

Но я не знал, что дата в UNIX timestamp ВСЕГДА в UTC (UTC+0). Т.е. мне вместо вычитания трёх часов достаточно было просто сконвертировать мою строковую дату во временную метку, только и всего! А когда я конвертировал строковую дату, которая итак была в UTC+0 в timestamp, умный язык PHP вычитал ещё 3 часа (ввиду имеющейся локальной временной зоны), дабы привести дату к формату UTC (конечно, я мог оперировать датой в строковом формате с указанием временного сдвига, типа 2020-01-01T00:00:00+03:00, например — но я так не делал).

И, кстати говоря, в указанной мной документации ясно и понятно написано обо всём том, на что я наткнулся.

Сравнение даты и времени при помощи PHP функции StrToTime ()

В PHP можно легко создать удобочитаемую дату или время, используя функцию Date() . Эта функция принимает два аргумента: допустимый формат даты и метку времени Unix ( если ее не указывать, функция возвратит текущую дату/время ).

Приведенный выше пример прекрасно подходит для отображения дат и времени. Но когда дело доходит до PHP сравнения дат, использовать удобные для чтения строки — не самый надежный способ. Намного эффективнее сравнить временные метки. Метка времени Unix содержит количество секунд между 1 января 1970 00:00:00 GMT и указанным временем. Это означает, что можно сравнивать даты вплоть до секунд.

Чтобы использовать функцию date() для возврата конкретной даты необходима метка времени, так что сначала потребуется создать ее. Это можно сделать с помощью функций mktime() или strotime() . Обе функции возвращают метку времени Unix , но при этом принимают различные аргументы.

Функция mktime() требует, чтобы дата и время были переданы ей в виде отдельных сегментов ( часы, минуты, секунды, месяц, день, год ):

В свою очередь функция strtotime() может преобразовать текстовое представление даты/времени в метку времени:

Если при PHP сравнении даты с текущей функция strtotime() получает дату/время, в которых день и месяц располагаются перед годом, эта запись будет интерпретироваться по-разному, в зависимости от используемого разделителя. При использовании косой черты в качестве разделителя функция возвратит метку времени в американском формате ( м/д/г ). При использовании в качестве разделителя тире или точки функция возвратит метку в европейском формате ( д-м-г ).

Как можно увидеть ниже, первая метка времени отличается от двух последних:

Функции mktime() и strtotime() возвращают одинаковый результат. Часто текстовое представление даты и времени (‘ 2020-01-01 ‘) хранится в базе данных и считывается из нее через HTML-форму . Например, при помощи библиотеки jQuery datepicker , которая идеально подходит для использования функции strtotime() .

Прежде чем осуществлять сравнение двух дат в PHP , важно убедиться, что временные метки созданы с помощью одного и того же формата. Можно воспользоваться функцией mktime() . Ее преимущество заключается в том, что она намного строже в отношении передаваемой ей даты или время.

Важным преимуществом использования функции strtotime() является гибкость и простота, с которой можно добавить время или вычесть из него:

Пример, показанный ниже, демонстрирует PHP сравнение даты и операции с использованием функции strtotime() . В нем создается массив дат в заданном диапазоне в соответствии с определенным временным интервалом. Функция print_r() выводит результирующий массив, который выглядит следующим образом:

При сравнении двух дат в PHP внутри цикла while время ( в данном случае семь дней ) добавляется к дате начала и производится проверка, чтобы убедиться больше ли полученная временная метка, чем временная метка даты начала.

Если это не так, новая дата добавляется в массив $DateRange , пока цикл не закончится:

Я использовал оператор switch , чтобы определить несколько различных вариантов временного интервала. Это было сделано для того, чтобы показать, как интуитивные « временные » строки использовались для управления временной меткой с помощью функции strtotime() . В документации по PHP приводятся дополнительные примеры.

Данная публикация представляет собой перевод статьи « Compare Date and Time With PHP strtotime() | Quick Reference Tutorial » , подготовленной дружной командой проекта Интернет-технологии.ру

Лучшие strtotime вопросы ИТ разработчиков

Добавление лет к дате сбрасывается до 1970-01-01

PHP — Strtotime — Добавить часы

У меня есть эта переменная:

PHP получить время от строки даты

Неверное время сервера

PHP, получить завтрашнюю дату от даты


как узнать дату праздников используя php

Например:3-й понедельник января для День Мартина Лютера Кинга3-й понедельник февраля для президенты День (Вашингтон)день рождения)Последнее воскресенье марта.

Определить, открыт ли бизнес / закрыт в зависимости от рабочих часов

Мой код работает нормально, если время с AM до PM (например, с 11:00 до 22:00), но если часы работы часов находятся с AM до AM (например, с 9:00 до 1:00), он.

Как получить ближайшую дату по сравнению с массивом дат в PHP

PHP — использовать дату, чтобы узнать летнее время

Удаление ровно одного месяца с даты

Кажется, ты можешьт использовать

Проверьте, если текущее время между двумя разами, с возможностью притирки дней

У меня есть система, которая принимает пользовательские представления, и после получения представления система просматривает все временные интервалы, чтобы н.

дата php меньше другой даты

учитывая этот вид даты объекта

Добавление дней к дате с помощью PHP

Получение всех дат по понедельникам и вторникам на следующий год

Как получить дату из номера недели, номера дня и года?

Что такое метка времени Unix и зачем ее использовать?

Что такое метка времени Unix? В PHP при работе с датами функция

Странное поведение strtotime () при использовании относительных дат («на этой неделе»)

PHP — использовать дату, чтобы узнать летнее время

Я хочу дать date () дату и вернуть ее, будет ли эта дата летним или нет. Запуск PHP 5.4.7 через xampp на Windows 7. Окно linux, работающее на PHP 5.2.8, возвращает 0 независимо от того, какую дату я ему сообщу. Что не так с моим кодом? echo .

Удаление ровно одного месяца с даты

Кажется, что вы не можете использоватьstrotime если вам нужны надежные и точные манипуляции с датой. Например, если в месяце 31 день, получается, чтоstrtotime просто минус 30 дней, а не целый месяц. Так, например, если$event[«EndDate»] равен .

дата php меньше другой даты

учитывая этот вид даты объектаdate(«m/d/Y», strtotime($numerical.» «.$day.» of «.date(«F»))) где это может дать день мм / дд / гггг, например, «первый понедельник августа» как я могу решить, будет ли эта дата больше, меньше или равна .

Проверьте, если текущее время между двумя разами, с возможностью притирки дней

У меня есть система, которая принимает пользовательские представления, и после получения представления система просматривает все временные интервалы, чтобы найти соответствующий временной интервал. Проблема заключается в том, что он должен иметь .

PHP получит следующее вхождение понедельника с определенной даты (со временем)

Я ищу следующий четверг после определенной даты, скажем

Как сделать strtotime-разбор дат в австралийском (то есть в Великобритании) формате: дд / мм / гггг?

Я не могу поверить, я никогда не сталкивался с этим раньше.По сути, я анализирую текст в созданных человеком текстовых документах, и одно из полей, которые м.

Время начала и окончания, разделенное на сегменты по 1 часу

получить strtotime определенного времени в php

Добавление 30 минут ко времени в формате H: i в PHP

Имея кошмар в данный момент и просто не могу понять, почему он не работаетУ меня есть значение в форме H: я (то есть 10:00, 13:30) и т. Д. Называется времяЯ .

php получает правильную дату на первой неделе года, используя strtotime

Результат strtotime не имеет смысла, ошибка php?

PHP: strtotime возвращает false для будущей даты?

Как рассчитать интервал между 2 unix timestamps в php БЕЗ деления на 86400 (60 * 60 * 24)


Может кто-нибудь объяснить, почему strtoti, me (‘cast’) возвращает значение?

На самом деле это не проблема (хотя это противоречит имеющемуся у нас выражению if ()), но когда вы вводите strtotime («cast»), он возвращает фактическое зна.

php strtotime «последний понедельник», если сегодня понедельник?

Я хочу использовать

PHP — Использование strtotime с британским форматом даты (дд-мм-гг)

Добавление дней к дате с помощью PHP

Я пытаюсь добавить определенное количество дней к установленной дате в PHP. Однако весь код, который я использую, не работает. Вот код, с которым у меня сейчас проблемы: echo date(«2013-12-01», strtotime(«+7 days»));Я хочу добавить 7 дней к .

Действительно, у @SamOnela есть цитата (из документации о датах), которая объясняет это.

Лучшее решение для PHP 5.2 выглядит примерно так:

гда получаю неожиданные результаты при использовании порядковых значений с strtotime. Например, почему date(«M j», strtotime(«second Tuesday February 2011»))результат в «15 февраля» (который на самом делетретийВторник в 2011 году?

Что такое метка времени Unix и зачем ее использовать?

Что такое метка времени Unix? В PHP при работе с датами функцияstrtotime() выводит некоторое целочисленное значение — что это? Я пытался узнать об этом, но я не мог получить удовлетворительный ответ, особенно почему нам нужно конвертировать даты, .

Метод date (), «встречается неправильно сформированное числовое значение» не хочет форматировать дату, переданную в $ _POST

Я к сожалению не могу использоватьDateTime() в качестве сервера, на котором работает этот проект, работает PHP v.5.2. рассматриваемая строка: $aptnDate2 = date(‘Y-m-d’, $_POST[‘nextAppointmentDate’]);выдает следующую ошибку: Notice: A non well .

Супер запоздалый ответ, но для любого, как я, кто это видит, это не является доказательством перехода на летнее время 48 часов до 2020-09-30 в Новой Зеландии — 2020-09-27, а не 28-е. Лучше было бы использовать strtotime с «-x days».

я проблема с получением даты понедельника на текущей неделе. echo date(‘Y-m-d’,strtotime(‘monday this week’));Когда я запускаю приведенный выше код на моей локальной машине (PHP 5.3), он правильно выводит «2011-03-07», но тот же код на моем .

Я делаю это так:

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

Может быть, это может быть OSS, поэтому сообщество может помочь вам реализовать это.

ли эквивалент PHPstrtotime() функция работает на .NET Framework. Я говорю о его способности обрабатывать строки, например: StrToTime (»в настоящее время«)strtotime («10 сентября 2000»)StrToTime (»+1 день «)StrToTime (»+1 неделя«)StrToTime (»+1 .

: на входе указана полная дата (‘y-m-d’) и на выходе (‘y-m-d’), вы можете изменить этот код в соответствии со своими потребностями.

ужно получить предыдущий месяц и год относительно текущей даты. Однако см. Следующий пример. // Today is 2011-03-30 echo date(‘Y-m-d’, strtotime(‘last month’)); // Output: 2011-03-02Такое поведение понятно (до определенного момента) из-за .

проанализировать строку для вас.

му я преобразовал эту строку в метку времени, используя strtotime: strtotime(«1 Nov, 2001»);что приводит к отметке времени 1320207660 но затем, когда я попытался снова преобразовать 1320207660 в обычный формат даты с помощью онлайн-конвертера .

Первая неделя 2008 года была 31 декабря 2007 года. В этом сценарии это не сработает

аюсь сгруппировать даты по номеру недели и году, а затем хочу преобразовать номер недели обратно в метку времени Unix. Как я могу сделать это?

Прочитайте вопрос . Я прекрасно знаю, на что способен strtotime и как его обойти. Но это не то, что я спрашиваю . Я прошу функцию, которая принимает дату в любом формате вместе со строкой, которая говорит, в каком формате эта дата, и возвращает метку времени Unix.

strtotime()P прекрасно работает, если вы можете предоставить ему формат даты, который он понимает и может конвертировать, но, например, вы даете ему британскую дату, но она не дает правильную метку времени Unix. Есть ли какая-либо функция PHP, .

Вы должны отредактировать свой ответ, чтобы включить объяснение кода, вместо того, чтобы включать объяснение в комментарии.

, что у меня есть строка,»2007-02-28″какой самый простой код я мог бы написать, чтобы превратить это в»2007-03-01″? Сейчас я просто используюstrtotime(), затем добавив24*60*60затем с помощьюdate(), но просто интересно, есть ли более .

или вы когда-либо добавляли номер ко времени, вы использовали временные метки. : О)

десь происходит с strtotime? $today = date(‘m.d.y H:i’, time()); echo strtotime($today);Ничего не выводит . что происходит?

Попробуйте установить язык перед преобразованием:

ает ли strtotime только на языке по умолчанию на сервере? Приведенный ниже код должен разрешиться до 11 августа 2005 года, однако он использует французский «aout» вместо английского «aug». Есть идеи, как справиться с этим? Задан 08 Aug 2011, 21:01 от Cory Dee

Получение всех дат по понедельникам и вторникам на следующий год

Мне нужно вывести список дат (только по понедельникам и вторникам) на следующие 12 месяцев с текущей даты следующим образом: Январь 2010 Вт 12 янв 2010 Пн 18 янв 2010 Вт 19 янв 2010 Пн 25 янв 2010 Февраль 2010 Вт 02 фев 2010 Пн 08 фев 2010 Вт 09 .

Преобразуйте $ startDate и $ endDate до этого во временные метки:

р:$startDate понедельник 2007-02-05 и$endDate это вторник 2007-02-20. Тогда я хочу это перечислить: Monday 2007-02-05 Monday 2007-02-12 Monday 2007-02-19Я посмотрел руководство по PHP и обнаружил, что это все дни между двумя датами. Но как это .

Илон Маск рекомендует:  sscanf - Разбирает строку в соответствии с заданным форматом
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL