Ihads.ru

Все про недвижимость
9 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Руководство по работе с датами и временем в PHP

Руководство по работе с датами и временем в PHP

PHP-функция date() преобразует метку времени в более удобочитаемые дату и время.

Компьютер хранит дату и время в формате, который называется UNIX Timestamp; он измеряет время как количество секунд с начала эпохи Unix (полночь по Гринвичу 1 января 1970 г., т.е. 1 января 1970 г., 00:00:00 по Гринвичу). ,

Поскольку это непрактичный формат для чтения людьми, PHP преобразует временную метку в формат, понятный людям, и даты из вашей записи в метку времени, понятную компьютеру. Синтаксис PHP-функции date() можно задать с помощью.

Параметр формата в функции date() является обязательным, который определяет формат возвращаемых даты и времени. Однако метка времени (timestamp) является необязательным параметром; если она не указана, будут использоваться текущая дата и время. Следующая инструкция отображает сегодняшнюю дату:

PHP-функция date() возвращает текущую дату и время в соответствии со встроенными часами веб-сервера, на котором был выполнен скрипт.

У WordPress огромное сообщество, поэтому для любой функциональности, которая вам понадобится, есть удобный плагин или даже несколько. Не исключение и наша ситуация, чтобы увеличить в PHP время выполнения скрипта, можно воспользоваться плагином WP Maximum Execution Time Exceeded и устранить возникшую ошибку. Подробную инструкцию о том, как установить плагин WordPress можно найти здесь.

Этот плагин вносит изменения в файл .htaccess и увеличивает ограничения по времени выполнения скрипта. После установления плагина вам больше ничего не нужно делать, всё уже сделано плагином. Страницы настройки у плагина нет, поэтому, если вы захотите вернуть обратно прежние настройки, просто удалите плагин и .htaccess будет возвращён к изначальному виду.

Читайте так же:
Как пользоваться общедомовыми счетчиками

1) запросы SQL, Redis, Memcached или любое другое соединение TCP

Время, затраченное на выполнение SQL-запросов, не учитывается. Например, у вас есть скрипт, который имеет SQL-запрос, и его выполнение занимает 10 секунд. Это означает, что скрипт будет работать 15 секунд, а не ожидаемые 5.

Как мы видим, время выполнения скрипта не включает время выполнения SQL-запроса.

То же самое будет применяться к любым другим внешним вызовам TCP, таким как:

  • Memcached
  • MongoDB
  • Redis

2. Преобразование типа времени

2.1 Время преобразования типа

Введенные соответствующие функции времени и соответствующие функции обработки, давайте сделаем простой сводку различных типов времени, как показано ниже:

Большинство функций на рисунке были описаны в разделе 1, где две функции используются в структурных типах TM и пользователь, определенные в типе структуры TM и определенным пользователем. Convert между форматом отображения.

Функция STRFTIME () преобразует формат TM в формат формата и поместите его в главный адрес, а формат общего формата:

  • Микро-неделя
  • % Полное имя
  • Микрофин
  • % B полное имя
  • Строка времени даты% C Standard
  • Опубликовать два числа в% c
  • Первый день ежемесячного указа
  • % D месяц / день / год
  • % e в двух символьном домене, первый день ежемесячного представления
  • % F лет — месяц — день
  • Следующие два числа% г старых, используйте недельный год
  • % G старше, используйте недельный год
  • % h Короткопичное имя месяца
  • % H 24 часа часа
  • % I 12 часов часов
  • % J разумно выразил первые несколько дней
  • Месяц, указанный% m dec
  • Минимальное количество минут, обозначенных% м
  • % N новый символ линии
  • % P Местный AM или PM эквивалентно отобразить
  • % R 12 часов времени
  • % R показывает часы и минуты: HH: мм
  • % S Десятичное количество секунд
  • % T горизонтальная вкладка
  • % T отображение времени STATH: HH: MM: SS
  • % U Еженедельный день, в понедельник первый день (стоимость от 0 до 6, понедельник 0)
  • % U, Годилой неделя, поставить воскресенье в качестве первого дня (стоимость от 0 до 53)
  • Процент недели, используя ежедневный год
  • Выполнение% WECIMAL (значение от 0 до 6, воскресенье 0)
  • Неделя% W, в понедельник в качестве первого дня (стоимость от 0 до 53)
  • % X Стандартная строка даты
  • % X Стандартная строка времени
  • % Y не займет десять лет (стоимость от 0 до 99)
  • % Y принимает десятичный год века
  • % Z,% Z Название часового пояса, если имя часового пояса не может быть получено, верните пустые символы.
  • %% процентов знака
Читайте так же:
Маркировка вторичных цепей для счетчика

Функция STRPTIME () выполняет противоположную работу, преобразуйте функцию Rentime () обратно в формат структуры TM. Это определяется следующим образом:

2.2 Пример

После того, как рассказываю это, давайте пройдем простой пример:

Do with caution yo. 5 minutes execution could really hog resources.

The function set_time_limit(seconds) does exactly the same. If seconds is set to zero, no time limit is imposed.

Interesting… I never really considered the idea that there was a built-in execution limit, but that makes sense.

Do you know what the default setting in php.ini is set to?

As for Jay’s comment, that makes sense. Would sleep() hog resources still? Because it’s running, but not doing anything.

Oh nice, noticed the Gravatars. I just implemented on them my site as well.

I’d suggest running time-consuming scripts on a localhost, rather than on a live server… when possible.

A while back I had some ornery scripts that did massive statistical computations on user-generated data to produce reports. So I wrote the scripts to generate those reports and ran them on the live site where the data resided. The result was the website became unresponsive, and we’re talking about >1 minute page loads. Some of that no doubt was due to loads on the database, as well as execution of the PHP.

So I pulled a copy of the database to my local drive, and ran the scripts on localhost using that data snopshot. 5 minutes later, I got the reports I needed, then uploaded them back to the server as flat HTML files for public consumption.

Naturally this isn’t a viable option for generating reports on demand… other options may be to pre-compute using a CRON during non-peak hours (like 3AM EST) or run the scripts on another box which is capable of connecting to the live data, performing the calculations, then sending the output to the live server via FTP

Читайте так же:
Как сбросить счетчик аксесс

This is useful for those scripts that notify search engines about new posts. Now I know how it’s done. Thanks, David!

set_time_limit has another advantage, you can call it several times and it adds the time to the total script runtime. so you can use it in a loop and it doesn’t matter how many iterations you have, you set only the time per iteration.

Well, I’ve got to say that tip saved my day 🙂
I was transferring file from another server to my server using a script and every time the script break for ( Max Execution Time )
Now I transferred all the files and reset it back to the original status!

Interesting. Thanks for this tip, or better yet, the insight.

Of late, and since the server which I have many sites had its PHP and Apache upgraded, I’ve had a number of php-apps/scripts fail from memory exceeded.

None of these installation had issues prior to the upgrade, so I imagine both the the upgrades are being a bit more strict?

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector