Year code in php

How to Get Year From a Date in PHP?

New here? Like SchoolsOfWeb on Facebook to stay up to date with new posts.

Problem:

You have a date which consists of day, month, and year. You just want to retrieve the year from that date.

Solution:

There are few ways you can retrieve year from a date. In the following you’ll see different ways to retrieve year from current date or from any date –

Method 1: Using only date() function to get current year

PHP’s date() function can let you know date and time related information based on the formatting string it takes in its first parameter. It can take two parameters. If you use only one parameter, It will return info about the current time.

Depending on the formatting parameter you can get two types of output as the year-

  • Y- A four digit numeric representation of a year. Ex. 2001
  • y – A two digit numeric representation of a year. Ex. 01
Читайте также:  Example of a blinking text using CSS within a marquee

Now, see these in action in the example-

"; echo "2 digit of current year is: " . date("y"); ?>

Output:
4 digit of current year is: 2014
2 digit of current year is: 14

Method 2: Using strtotime() and date() function to get year from any date

In this method, to get the year, we’ll follow two steps-

  • We’ll first convert a date to its equivalent timestamp using strtotime() function. A timestamp of a date is the representation of seconds from January 1 1970 00:00:00 UTC to that time, then,
  • We’ll use the date() function that we used in the method 1.

See how it works in action in the following example-

"; echo "2 digit of current year is: " . date("y", $timestamp); ?>

Output:
4 digit of current year is: 1993
2 digit of current year is: 93

In the above example,I used 5th February 1993 as date format. You may have different date format. Don’t worry. Any format will work as long as you follow the supported date and time formats

Method 3: Using DateTime class to get current year

From PHP 5.2, PHP provides some ready-made classes to solve daily problems. One of the classes is DateTime which helps to solve date time related issues.

To get current year using DateTime class, we’ll follow two steps-

  • Create an object of DateTime class. The DateTIme() class represents the current time.
  • Then, use format() method to retrieve the year from the newly created object.

See the following example-

format('Y'); echo "
"; echo "2 digit of current year is: " . $now->format('y'); ?>

Output:
4 digit of current year is: 2014
2 digit of current year is: 14

Method 4: Using CreateFromFormat() method to get year from any date

In this method, we’ll retrieve year from any date in two steps-

  • First, we’ll create a new DateTime object from the date using createFromFormat() method, then
  • Then, we’ll retrieve the year using format() method

See it in action in the following example –

format('Y'); echo "
"; echo "2 digit of current year is: " . $dateObj->format('y'); ?>

Output:
4 digit of current year is: 1993
2 digit of current year is: 93

Источник

date

Возвращает строку, отформатированную в соответствии с указанным в параметре format шаблоном. Используется метка времени, заданная параметром timestamp (метка времени Unix), или текущее системное время, если параметр timestamp не задан. Таким образом, параметр timestamp является необязательным и по умолчанию равен значению, возвращаемому функцией time() .

Метки времени Unix не обрабатывают часовые пояса. Используйте класс DateTimeImmutable и его метод форматирования DateTimeInterface::format() для форматирования информации о дате/времени с привязкой к часовому поясу.

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

Замечание: Функция date() всегда будет генерировать 000000 в качестве микросекунд, поскольку она принимает параметр int , тогда как DateTime::format() поддерживает микросекунды, если DateTime был создан с микросекундами.

Необязательный параметр timestamp представляет собой метку времени типа int , по умолчанию равную текущему локальному времени, если timestamp не указан или null . Другими словами, значение по умолчанию равно результату функции time() .

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

Возвращает отформатированную строку с датой.

Ошибки

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

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

Версия Описание
8.0.0 timestamp теперь допускает значение null.

Примеры

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

// установка часового пояса по умолчанию.
date_default_timezone_set ( ‘UTC’ );

// выведет примерно следующее: Monday
echo date ( «l» );

// выведет примерно следующее: Monday 8th of August 2005 03:12:46 PM
echo date ( ‘l jS \of F Y h:i:s A’ );

// выведет: July 1, 2000 is on a Saturday
echo «July 1, 2000 is on a » . date ( «l» , mktime ( 0 , 0 , 0 , 7 , 1 , 2000 ));

/* пример использования константы в качестве форматирующего параметра */
// выведет примерно следующее: Mon, 15 Aug 2005 15:12:46 UTC
echo date ( DATE_RFC822 );

// выведет примерно следующее: 2000-07-01T00:00:00+00:00
echo date ( DATE_ATOM , mktime ( 0 , 0 , 0 , 7 , 1 , 2000 ));
?>

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

Пример #2 Экранирование символов в функции date()

Для вывода прошедших и будущих дат удобно использовать функции date() и mktime() .

Пример #3 Пример совместного использования функций date() и mktime()

$tomorrow = mktime ( 0 , 0 , 0 , date ( «m» ) , date ( «d» )+ 1 , date ( «Y» ));
$lastmonth = mktime ( 0 , 0 , 0 , date ( «m» )- 1 , date ( «d» ), date ( «Y» ));
$nextyear = mktime ( 0 , 0 , 0 , date ( «m» ), date ( «d» ), date ( «Y» )+ 1 );
?>

Замечание:

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

Ещё несколько примеров использования функции date() . Важно отметить, что следует экранировать все символы, которые необходимо оставить без изменений. Это справедливо и для тех символов, которые в текущей версии PHP не распознаются как форматирующие, поскольку это может быть введено в следующих версиях. Для экранировании управляющих последовательностей (например, \n) следует использовать одинарные кавычки.

Пример #4 Форматирование с использованием date()

// Предположим, что текущей датой является 10 марта 2001, 5:16:18 вечера,
// и мы находимся в часовом поясе Mountain Standard Time (MST)

$today = date ( «F j, Y, g:i a» ); // March 10, 2001, 5:16 pm
$today = date ( «m.d.y» ); // 03.10.01
$today = date ( «j, n, Y» ); // 10, 3, 2001
$today = date ( «Ymd» ); // 20010310
$today = date ( ‘h-i-s, j-m-y, it is w Day’ ); // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date ( ‘\i\t \i\s \t\h\e jS \d\a\y.’ ); // it is the 10th day.
$today = date ( «D M j G:i:s T Y» ); // Sat Mar 10 17:16:18 MST 2001
$today = date ( ‘H:m:s \m \i\s\ \m\o\n\t\h’ ); // 17:03:18 m is month
$today = date ( «H:i:s» ); // 17:16:18
$today = date ( «Y-m-d H:i:s» ); // 2001-03-10 17:16:18 (формат MySQL DATETIME)
?>

Для форматирования дат на других языках вместо функции date() можно использовать метод IntlDateFormatter::format() .

Примечания

Замечание:

Для получения метки времени из строкового представления даты можно воспользоваться функцией strtotime() . Кроме того, некоторые базы данных имеют собственные функции для преобразования внутреннего представления даты в метку времени (например, функция MySQL » UNIX_TIMESTAMP).

Временную метку начала запроса можно получить из поля $_SERVER[‘REQUEST_TIME’] .

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

  • DateTimeImmutable::__construct() — Возвращает новый объект DateTimeImmutable
  • DateTimeInterface::format() — Возвращает дату, отформатированную согласно переданному формату
  • gmdate() — Форматирует дату/время по Гринвичу
  • idate() — Преобразует локальное время/дату в целое число
  • getdate() — Возвращает информацию о дате/времени
  • getlastmod() — Получает время последней модификации страницы
  • mktime() — Возвращает метку времени Unix для заданной даты
  • IntlDateFormatter::format() — Форматирует значение даты/времени в виде строки
  • time() — Возвращает текущую метку системного времени Unix
  • Предопределённые константы даты и времени

User Contributed Notes

  • Функции даты и времени
    • checkdate
    • date_​add
    • date_​create_​from_​format
    • date_​create_​immutable_​from_​format
    • date_​create_​immutable
    • date_​create
    • date_​date_​set
    • date_​default_​timezone_​get
    • date_​default_​timezone_​set
    • date_​diff
    • date_​format
    • date_​get_​last_​errors
    • date_​interval_​create_​from_​date_​string
    • date_​interval_​format
    • date_​isodate_​set
    • date_​modify
    • date_​offset_​get
    • date_​parse_​from_​format
    • date_​parse
    • date_​sub
    • date_​sun_​info
    • date_​sunrise
    • date_​sunset
    • date_​time_​set
    • date_​timestamp_​get
    • date_​timestamp_​set
    • date_​timezone_​get
    • date_​timezone_​set
    • date
    • getdate
    • gettimeofday
    • gmdate
    • gmmktime
    • gmstrftime
    • idate
    • localtime
    • microtime
    • mktime
    • strftime
    • strptime
    • strtotime
    • time
    • timezone_​abbreviations_​list
    • timezone_​identifiers_​list
    • timezone_​location_​get
    • timezone_​name_​from_​abbr
    • timezone_​name_​get
    • timezone_​offset_​get
    • timezone_​open
    • timezone_​transitions_​get
    • timezone_​version_​get

    Источник

    Get the Current Year in PHP

    Get the Current Year in PHP

    1. Use date() Function to Get the Current Year in PHP
    2. Use strftime() Function to Get the Current Year in PHP
    3. Use DateTime Object to Get the Current Year in PHP

    In this article, we will introduce methods to get the current year.

    • Using date() function
    • Using strftime() function
    • Using format() method in the DateTime object

    Use date() Function to Get the Current Year in PHP

    We could use the built-in date() function to get the current year. It returns the current date with the specified format. Its syntax is as follows

    The parameter $format tells about the final date format that will be displayed. It has several variations. It should be a string.

    The parameter $timestamp is optional. It specifies the specific timestamp and displays the date accordingly. If no timestamp is passed, then it uses the current date by default.

    php $Date = date("d-m-Y"); echo "The current date is $Date."; echo "\n"; $Year = date("Y"); echo "The current year is $Year."; echo "\n"; $Year2 = date("y"); echo "The current year in two digits is $Year2."; ?> 

    The format «d-m-Y» will return the full date with 4 digit year value. The format «Y» will return the 4 digit year value. The format «y» will return the 2 digit year value. You can modify it according to your requirements.

    The current date is 20-04-2020. The current year is 2020. The current year in two digits is 20. 

    Use strftime() Function to Get the Current Year in PHP

    Another built-in function in PHP — strftime() could also return the date or time string in the given format. It has a different format for variations of date and time.

    The parameter $format tells about the format of the date or time. It is a string.

    The parameter $timestamp is an optional variable that tells about the UNIX timestamp. It is an integer. If not given, the function returns the current date or time.

    php $Date = strftime("%d-%m-%Y"); echo "The current date is $Date."; echo "\n"; $Year = strftime("%Y"); echo "The current year is $Year."; echo "\n"; $Year2 = strftime("%y"); echo "The current year in two digits is $Year2."; ?> 

    We can get the current year in 4 digits value by using format «%Y» , and in 2 digits value by using format «%y» .

    The current date is 20-04-2020. The current year is 2020. The current year in two digits is 20. 

    Use DateTime Object to Get the Current Year in PHP

    In PHP, DateTime format() function is used to display the date in a specified format.

    $ObjectName = new DateTime(); $ObjectName->format($format); 

    The parameter $format specifies the format of the date.

    php $Object = new DateTime(); $Date = $Object->format("d-m-Y"); echo "The current date is $Date."; echo "\n"; $Year = $Object->format("Y"); echo "The current year is $Year."; echo "\n"; $Year2 = $Object->format("y"); echo "The current year in two digits is $Year2."; ?> 

    The output is the date with the specified format.

    The current date is 20-04-2020. The current year is 2020. The current year in two digits is 20. 

    Related Article — PHP DateTime

    Источник

Оцените статью