Verification: a143cc29221c9be0

Php add hours to date

PHP date() Function

PHP date function is an in-built function that simplify working with date data types. The PHP date function is used to format a date or time into a human readable format. It can be used to display the date of article was published. record the last updated a data in a database.

In this tutorial, you will learn date and time function in PHP-

  • PHP Date Syntax & Example
  • What is a TimeStamp?
  • Getting a list of available time zone identifiers
  • PHP set Timezone Programmatically
  • PHP Mktime Function
  • PHP Date function
  • Time parameters
  • Day parameters
  • Month Parameters
  • Year Parameters

PHP Date Syntax & Example

PHP Date the following basic syntax

HERE,

  • “date(…)” is the function that returns the current timestamp in PHP on the server.
  • “format” is the general format which we want our output to be i.e.;
    • “Y-m-d” for PHP date format YYYY-MM-DD
    • “Y” to display the current year
    • “[timestamp]” is optional. If no timestamp has been provided, PHP will get the current PHP date time on the server.

Let’s look at a basic example that displays the current year.

Output:

2018

What is a TimeStamp?

 A timestamp in PHP is a numeric value in seconds between the current time and value as at 1st January, 1970 00:00:00 Greenwich Mean Time (GMT).

 The value returned by the time function depends on the default time zone.

The default time zone is set in the php.ini file.

It can also be set programmatically using date_default_timezone_set function.

The code below displays the current time stamp

Assuming you saved the file timestamp.php in phptuts folder, browse to the URL http://localhost/phptuts/timestamp.php

Note: the value of the timestamp PHP is not a constant. It changes every second.

Getting a list of available time zone identifiers

Before we look at how to set the default time zone programmatically, let’s look at how to get a list of supported time zones.

 $list){

echo $list . "
"; } ?>

  HERE,

  • “$timezone_identifiers = DateTimeZone::listIdentifiers();” calls the listIdentifiers static method of the DateandTime Zone built in class.

    The listIdentifiers method returns a list of constants that are assigned to the variable $timezone_identifiers.

  • “foreach{…}” iterates through the numeric array and prints the values.

Assuming you saved the file list_time_zones.php in phptuts folder, browse to the URL http://localhost/phptuts/list_time_zones.php

PHP set Timezone Programmatically

The date_default_timezone_set function allows you to set the default time zone from a PHP script.

The set time zone will then be used by all date in PHP function scripts. It has the following syntax.

HERE,

  • “date_default_timezone_set()” is the function that sets the default time zone
  • “string $timezone_identifier” is the time zone identifier

The script below displays the time according to the default time zone set in php.ini.

It then changes the default time zone to Asia/Calcutta and displays the time again.

  Assuming you have saved the file set_time_zone.php in the phptuts folder, browse to the URL http://localhost/phptuts/set_time_zone.php

PHP Mktime Function

The mktime function returns the timestamp in a Unix format.

It has the following syntax.

HERE,

  • “mktime(…)” is the make PHP timestamp function
  • “hour” is optional, it is the number of hour
  • “minute” is optional, it is the number of minutes
  • “second” is optional, it is the number of seconds
  • “month” is optional, it is the number of the month
  • “day” is optional, it is the number of the day
  • “year” is optional, it is the number of the year
  • “is_dst” is optional, it is used to determine the day saving time (DST). 1 is for DST, 0 if it is not and -1 if it is unknown.

Let’s now look at an example that creates a timestamp for the date 13/10/2025 using the mktime function.

  HERE,

  • “0,0,0” is the hour, minute and seconds respectively.
  • “13” is the day of the month
  • “10” is the month of the year
  • “2025” is the year

Output:

1760328000

PHP Date function reference

The table below shows the common parameters used when working with the PHP date functions.

PHP Time parameters

Parameter Description Example
“r” Returns the full date and time
“a”,”A” Returns whether the current time is am or pm, AM or PM respectively
“g”,”G” Returns the hour without leading zeroes [1 to 12], [0 to 23] respectively
“h”,”H” Returns the hour with leading zeros [01 to 12],[00 to 23] respectively
“i”,”s” Returns the minutes/seconds with leading zeroes [00 to 59]

Day parameters

Parameter Description Example
“d” Returns the day of the month with leading zeroes [01 to 31]
“j” Returns the day of the month without leading zeroes [1 to 31]
“D” Returns the first 3 letters of the day name [Sub to Sat]
“l” Returns day name of the week [Sunday to Saturday]
“w” Returns day of the week without leading zeroes [0 to 6] Sunday is represent by zero (0) through to Saturday represented by six (6)
“z” Returns the day of the year without leading spaces [0 through to 365]

Month Parameters

Parameter Description Example
“m” Returns the month number with leading zeroes [01 to 12]
“n” Returns the month number without leading zeroes [01 to 12]
“M” Returns the first 3 letters of the month name [Jan to Dec]
“F” Returns the month name [January to December]
“t” Returns the number of days in a month [28 to 31]

Year Parameters

Parameter Description Example
“L” Returns 1 if it’s a leap year and 0 if it is not a leap year
“Y” Returns four digit year format
“y” Returns two (2) digits year format (00 to 99)

Установка Carbon

Чтобы использовать Carbon, нужно импортировать его из пространства имен Carbon. К счастью, Carbon уже включен в Laravel, потому нам не придется добавлять его через Composer.

Чтобы импортировать Carbon, используйте:

php
use Carbon\Carbon;

После импорта можно попробовать этот пакет в работе.

Определение даты/времени

// определить текущее время - 2015-12-19 10:10:54
$current = Carbon::now();
$current = new Carbon();
// определить сегодняшнюю дату - 2015-12-19 00:00:00
$today = Carbon::today();
// определить вчерашнюю дату - 2015-12-18 00:00:00
$yesterday = Carbon::yesterday();
// определить завтрашнюю дату - 2015-12-20 00:00:00
$tomorrow = Carbon::tomorrow();
// обработать определенную строку - 2016-01-01 00:00:00
$newYear = new Carbon('first day of January 2016');
// установить часовой пояс - 2016-01-01 00:00:00
$newYearPST = new Carbon('first day of January 2016', 'America\Pacific');

Тонкий контроль дат

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

Carbon::createFromDate($year, $month, $day, $tz);
Carbon::createFromTime($hour, $minute, $second, $tz);
Carbon::create($year, $month, $day, $hour, $minute, $second, $tz);

Эти аргументы очень полезны, если ваши данные о дате или времени находятся в формате, который обычно не распознается Carbon. Если вы передадите значение null для любого из этих атрибутов, по умолчанию будет установлено текущее значение.

Управление датой/временем

Определение даты и времени – не единственная задача, которую нужно выполнять при работе с датами. Вам также часто придется изменять дату или время: например, при настройке пробного периода для пользователя нужно сделать так, чтобы он автоматически истек через определенное время. Предположим, чтобы настроить 30-дневный пробный период, мы можем использовать функции сложения и вычитания.

Это делается так:

// определить текущую дату
$current = Carbon::now();
// добавить 30 дней к текущей дате
$trialExpires = $current->addDays(30);

В документации Carbon вы найдете другие примеры использования методов add() и sub():

$dt = Carbon::create(2012, 1, 31, 0);
echo $dt->toDateTimeString();            // 2012-01-31 00:00:00
echo $dt->addYears(5);                   // 2017-01-31 00:00:00
echo $dt->addYear();                     // 2018-01-31 00:00:00
echo $dt->subYear();                     // 2017-01-31 00:00:00
echo $dt->subYears(5);                   // 2012-01-31 00:00:00
echo $dt->addMonths(60);                 // 2017-01-31 00:00:00
echo $dt->addMonth();                    // 2017-03-03 00:00:00 эквивалент $dt->month($dt->month + 1);
echo $dt->subMonth();                    // 2017-02-03 00:00:00
echo $dt->subMonths(60);                 // 2012-02-03 00:00:00
echo $dt->addDays(29);                   // 2012-03-03 00:00:00
echo $dt->addDay();                      // 2012-03-04 00:00:00
echo $dt->subDay();                      // 2012-03-03 00:00:00
echo $dt->subDays(29);                   // 2012-02-03 00:00:00
echo $dt->addWeekdays(4);                // 2012-02-09 00:00:00
echo $dt->addWeekday();                  // 2012-02-10 00:00:00
echo $dt->subWeekday();                  // 2012-02-09 00:00:00
echo $dt->subWeekdays(4);                // 2012-02-03 00:00:00
echo $dt->addWeeks(3);                   // 2012-02-24 00:00:00
echo $dt->addWeek();                     // 2012-03-02 00:00:00
echo $dt->subWeek();                     // 2012-02-24 00:00:00
echo $dt->subWeeks(3);                   // 2012-02-03 00:00:00
echo $dt->addHours(24);                  // 2012-02-04 00:00:00
echo $dt->addHour();                     // 2012-02-04 01:00:00
echo $dt->subHour();                     // 2012-02-04 00:00:00
echo $dt->subHours(24);                  // 2012-02-03 00:00:00
echo $dt->addMinutes(61);                // 2012-02-03 01:01:00
echo $dt->addMinute();                   // 2012-02-03 01:02:00
echo $dt->subMinute();                   // 2012-02-03 01:01:00
echo $dt->subMinutes(61);                // 2012-02-03 00:00:00
echo $dt->addSeconds(61);                // 2012-02-03 00:01:01
echo $dt->addSecond();                   // 2012-02-03 00:01:02
echo $dt->subSecond();                   // 2012-02-03 00:01:01
echo $dt->subSeconds(61);                // 2012-02-03 00:00:00

Методы получения и изменения значения

Методы получения и изменения значения (getters и setters) также позволяют быстро управлять или извлекать данные о дате и времени.

$dt = Carbon::now();
// получение данных
$dt->year   = 2015;
$dt->month  = 04;
$dt->day    = 21;
$dt->hour   = 22;
$dt->minute = 32;
$dt->second = 5;
// настройка данных
var_dump($dt->year);
var_dump($dt->month);
var_dump($dt->day);
var_dump($dt->hour);
var_dump($dt->second);
var_dump($dt->dayOfWeek);
var_dump($dt->dayOfYear);
var_dump($dt->weekOfMonth);
var_dump($dt->daysInMonth);

Сеттеры также можно объединить в единую строку:

$dt = Carbon::now();
$dt->year(1975)->month(5)->day(21)->hour(22)->minute(32)->second(5)->toDateTimeString();
$dt->setDate(1975, 5, 21)->setTime(22, 32, 5)->toDateTimeString();
$dt->setDateTime(1975, 5, 21, 22, 32, 5)->toDateTimeString();

Форматирование даты/времени

В приведенном выше примере вы могли заметить метод ->toDateTimeString(). С его помощью мы можем легко отформатировать дату/время для наших целей. В этом случае мы получим строку datetime.

$dt = Carbon::now();
echo $dt->toDateString();               // 2015-12-19
echo $dt->toFormattedDateString();      // Dec 19, 2015
echo $dt->toTimeString();               // 10:10:16
echo $dt->toDateTimeString();           // 2015-12-19 10:10:16
echo $dt->toDayDateTimeString();        // Sat, Dec 19, 2015 10:10 AM
.                                       // ... of course format() is still available
echo $dt->format('l jS \\of F Y h:i:s A'); // Saturday 19th of December 2015 10:10:16 AM

Относительное время

Carbon позволяет отображать относительное время с помощью методов diff().

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

Определение разницы

Эти методы позволяют вычислить разницу во времени:

$current = Carbon::now();
$dt      = Carbon::now();
$dt = $dt->subHours(6);
echo $dt->diffInHours($current);         // -6
echo $current->diffInHours($dt);         // 6
$future = $current->addMonth();
$past   = $current->subMonths(2);
echo $current->diffInDays($future);      // 31
echo $current->diffInDays($past);        // -62

Отображение разницы

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

Например, вместо того, чтобы отображать точное время публикации (допустим, 8:12), мы покажем посетителям блога, что публикация появилась 3 часа назад.

Метод diffForHumans() используется для вычисления разницы, а также ее преобразования в удобочитаемый формат.

Вот примеры его использования:

$dt     = Carbon::now();
$past   = $dt->subMonth();
$future = $dt->addMonth();
echo $dt->subDays(10)->diffForHumans();     // 10 дней назад
echo $dt->diffForHumans($past);             // 1 месяц назад
echo $dt->diffForHumans($future);           // через 1 месяц

Определение и использование

Функция EXTRACT() извлекает часть из заданной даты.

Синтаксис

EXTRACT(part FROM date)

Параметр значений

Параметр Описание
part Требуемый. Та часть, которую нужно извлечь. Может быть одной из следующих:
  • MICROSECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
  • SECOND_MICROSECOND
  • MINUTE_MICROSECOND
  • MINUTE_SECOND
  • HOUR_MICROSECOND
  • HOUR_SECOND
  • HOUR_MINUTE
  • DAY_MICROSECOND
  • DAY_SECOND
  • DAY_MINUTE
  • DAY_HOUR
  • YEAR_MONTH
date Требуемый. Данные, чтобы извлечь часть из

Технические детали


Вывод текущего года при помощи php.

Самой популярным действием с датами в php - является вывод текущего года в footer вашего сайта. Делается это путём размещения в footer вашего сайта следующего кода:

 echo date('Y');?> © Все права защищены.

Вывод текущей даты в php

Для того чтобы вывести текущую дату в php используем функции date(). Для этого разместим в нужном месте следующее выражение:

 echo date('d-m-Y'); ?>

Вывод текущего времени в php

Чтобы отобразить текущее время, опять воспользуемся функцией date(). Для этого в нужном Вам месте разместите следующее выражение:

 echo date('Н:i:s');?>