Date et heure PHP

La fonction

PHP date() est utilisée pour formater la date ou l'heure

horodatage (timestamp), c'est généralement une séquence de caractères qui identifie de manière unique un certain moment dans le temps

Date formatée  : La fonction date() renverra une chaîne générée par le paramètre timestamp selon le format spécifié.

Syntaxe

date(format, horodatage)

< td width="193" valign="top" style="word-break: break-all; border-width: 1px; border-style: solid;"> format
       参数     描述
    format必需,规定时间戳的格式。

    timestamp

可选,规定时间戳。默认是当前时间和日期
<🎜>Paramètres<🎜><🎜>
<🎜> <🎜>Description<🎜><🎜>
Obligatoire, spécifie le format de l'horodatage.
<🎜 ><🎜> horodatage<🎜>
><🎜>
Facultatif, spécifiez l'horodatage. La valeur par défaut est l'heure et la date actuelles

Un horodatage est une séquence de caractères qui représente l'heure et la date auxquelles un événement spécifique s'est produit


La chaîne de format peut reconnaître le format suivant chaîne de paramètres

< td width="193" valign="top" style="border-width: 1px; border-style: solid; word-break: break-all;">---< td width="193" valign="top" style="border-width: 1px; border-style: solid; word-break: break-all;"> D
    format 字符    说明    返回值例子
  日------
  d月份中的第几天,有前导零的 2 位数字01 到 31
  D星期中的第几天,文本表示,3 个字母Mon 到 Sun
  j月份中的第几天,没有前导零1 到 31
<🎜> caractère de format<🎜><🎜>
<🎜><🎜> Description<🎜><🎜> Exemple de valeur de retour < 🎜>
---
 dLe jour du mois, un nombre à 2 chiffres avec des zéros non significatifs01 à 31
Jour de la semaine, représentation textuelle, 3 lettresLun au Sun
 jJour du mois, sans zéro en tête1 à 31
  l("L"的小写字母)星期几,完整的文本格式Sunday 到 Saturday
  NISO-8601 格式数字表示的星期中的第几天(PHP 5.1.0 新加)1(表示星期一)到 7(表示星期天)
  S每月天数后面的英文后缀,2 个字符st,nd,rd 或者 th。可以和 j 一起用
  w星期中的第几天,数字表示0(表示星期天)到 6(表示星期六)
  z年份中的第几天0 到 365
  星期------

  W
ISO-8601 格式年份中的第几周,每周从星期一开始(PHP 4.1.0 新加的)例如:42(当年的第 42 周)
  月------

  F

月份,完整的文本格式,例如 January 或者 MarchJanuary 到 December
  m数字表示的月份,有前导零01 到 12
  M三个字母缩写表示的月份Jan 到 Dec
  n数字表示的月份,没有前导零1 到 12
  t给定月份所应有的天数28 到 31
  年------
  L是否为闰年如果是闰年为 1,否则为 0



  o

ISO-8601 格式年份数字。这和 Y 的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年。(PHP 5.1.0 新加)


Examples: 1999 or 2003

  Y4 位数字完整表示的年份例如:1999 或 2003
  y2 位数字表示的年份例如:99 或 03
  时间------
  a小写的上午和下午值am 或 pm
  A大写的上午和下午值AM 或 PM
  BSwatch Internet 标准时000 到 999
  g小时,12 小时格式,没有前导零1 到 12
  G小时,24 小时格式,没有前导零0 到 23
  h小时,12 小时格式,有前导零01 到 12
  H小时,24 小时格式,有前导零00 到 23
  i有前导零的分钟数00 到 59>
  s秒数,有前导零00 到 59>



  u

毫秒 (PHP 5.2.2 新加)。需要注意的是 date() 函数总是返回000000 因为它只接受 integer 参数, 而 DateTime::format() 才支持毫秒。



示例: 654321

  时区------
  e时区标识(PHP 5.1.0 新加)例如:UTC,GMT,Atlantic/Azores
  I是否为夏令时如果是夏令时为 1,否则为 0
  O与格林威治时间相差的小时数例如:+0200


  P

与格林威治时间(GMT)的差别,小时和分钟之间有冒号分隔(PHP 5.1.3 新加)例如:+02:00



  T



本机所在的时区

例如:EST,MDT(【译者注】在 Windows 下为完整文本格式,例如"Eastern Standard Time",中文版会显示"中国标准时间")。


  Z

时差偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的。


-43200 到 43200

  完整的日期/时间------
  cISO 8601 格式的日期(PHP 5 新加)2004-02-12T15:19:21+00:00
  rRFC 822 格式的日期例如:Thu, 21 Dec 2000 16:01:07 +0200


  U

从 Unix 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数


参见 time()

PHP date() Formater la date

Le premier paramètre obligatoire de la fonction date(), format, spécifie comment formater la date/heure.

Voici quelques caractères disponibles :

d - représente le jour du mois (01 - 31)

m - représente le mois (01 - 12)

Y - représente l'année (quatre chiffres)

Pour une liste de tous les caractères disponibles dans le paramètre format, veuillez consulter notre manuel de référence PHP Date, fonction date().

Vous pouvez insérer d'autres caractères entre les lettres, tels que "/", "." ou "-", afin de pouvoir ajouter une mise en forme supplémentaire :

Exemple

<?php
echo date("Y/m/d") . "<br>";
echo date("Y.m.d") . "<br>";
echo date("Y-m-d");
?>

Résultat de l'exécution du programme :

09/10/2016
09.10.2016
09/10/2016


Les caractères suivants sont couramment utilisés pour l'heure :

· h - 12 avec zéro heure en tête Format de l'heure

· i - minute avec zéro non significatif

· s - seconde avec zéro non significatif (00 -59)

· a - midi et après-midi minuscules (matin ou après-midi)


Exemple

L'exemple suivant affiche l'heure actuelle dans le format spécifié :

<?php
echo date ("H:i:sa");
?>

Résultat de l'exécution du programme :

15:53:06

La fonction PHP date() renverra l'heure/la date actuelle du serveur


Obtenir le fuseau horaire

Si l'heure renvoyée par le code n'est pas l'heure correcte, il est possible que votre serveur soit situé dans un autre pays ou soit défini vers un fuseau horaire différent.

Donc, si vous avez besoin d'une heure précise basée sur un emplacement spécifique, vous pouvez définir le fuseau horaire à utiliser.

L'exemple suivant définit le fuseau horaire sur "Asie/Shanghai", puis affiche l'heure actuelle dans le format spécifié :

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
date_default_timezone_set("Asia/Shanghai");
echo "当前时间是 " . date("h:i:sa");

?>

Le résultat de l'exécution du programme :

L'heure actuelle est 15:54:49


Date de création via PHP mktime()

<🎜 Le paramètre facultatif timestamp dans la fonction >date() spécifie un horodatage. Si vous ne spécifiez pas d'horodatage, la date et l'heure actuelles seront utilisées (comme dans l'exemple ci-dessus).

La fonction mktime() renvoie l'horodatage Unix d'une date. Un horodatage Unix contient le nombre de secondes entre l'époque Unix (1er janvier 1970 00:00:00 GMT) et l'heure spécifiée.

Grammaire

mktime(heure, minute, seconde, mois, jour, année)

Exemple ci-dessous A une série de paramètres dans la fonction mktime() sera utilisée pour créer la date et l'heure

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$d=mktime(9, 12, 31, 6, 10, 2016);
echo "创建日期是 " . date("Y-m-d h:i:sa", $d);
?>

Le résultat de l'exécution du programme :

La date de création est le 09/06/2016 : 00h31


Créer des dates à partir de chaînes via PHP strtotime()

La fonction PHP strtotime() est utilisée pour convert lisible par l'homme Convertit la chaîne lue en heure Unix.

Syntaxe

strtotime(heure, maintenant)

L'exemple suivant crée la date et l'heure via la fonction strtotime() :

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$d=strtotime("10:38pm April 15 2016");
echo "创建日期是 " . date("Y-m-d h:i:sa", $d);
?>

Résultat de l'exécution du programme :

La date de création est le 15/04/2016 22:38:00


PHP est très intelligent pour convertir des chaînes en dates, vous pouvez donc utiliser une variété de valeurs :

Instance

<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>

Résultat en cours d'exécution du programme :

2016-10-10 12 : 00:00
2016-10-15 00:00:00
2017-01-09 16:01:09pm

Remarque : strtotime() C'est pas parfait, alors pensez à vérifier les cordes que vous y mettez.


Instance

<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+5 weeks",$startdate);
while ($startdate < $enddate) {
    echo date("M d", $startdate),"<br>";
    $startdate = strtotime("+1 week", $startdate);
}
?>

Résultat de l'exécution du programme :

15 octobre
22 octobre
29 octobre
05 novembre
12 novembre


Exemple

Utilisez la fonction strtotime() pour obtenir l'horodatage de la chaîne de date et d'heure au format anglais

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
echo strtotime("now"),"<br>";           //当前时间的时间戳
echo "输出时间:".date("Y-m-d H:i:s",strtotime("now")),"<br>";  //输出当前时间
echo strtotime("24 May 2016"),"<br>";                     //输出指点时间的时间戳
echo "输出时间:".date("Y-m-d H:i:s",strtotime("24 May 2016")),"<br>";     //输入指定的日期
?>

Le résultat de l'exécution du programme :

1476000300
Heure de sortie : 2016-10-09 16:05:00
1464019200
Heure de sortie : 2016-05-24 00:00:00


Exemple

Réaliser la fonction de compte à rebours

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$time=strtotime(date("Y-m-d H:i:s"));     //当前的系统时间
$time1=strtotime("2017-10-1  12:00:00");  //国庆节的放假时间
$time2=strtotime("2017-1-1");             //元旦的放假时间
$sub=ceil(($time1-$time)/3600);           //(60秒*60分)/小时
$sub1=ceil(($time2-$time1)/86400);        //(60秒*60分*24小时)/天
echo "离国庆放假时间还有 <strong>$sub</strong> 小时";
echo "<p>";
echo"离元旦放假时间还有 <strong>$sub1</strong> 天";
?>

Résultat en cours d'exécution du programme :

Il reste encore 8564 heures avant les vacances de la Fête Nationale

Il reste -273 jours avant les vacances du Nouvel An


Manuel complet de référence de date PHP

Pour un manuel de référence complet pour toutes les fonctions de date, veuillez visiter notre Manuel de référence complet de date PHP.

Ce manuel de référence fournit une brève description et des exemples d'application de chaque fonction  !


Formation continue
||
<?php echo date ("H:i:sa"); ?>
soumettreRéinitialiser le code
  • Recommandations de cours
  • Téléchargement du didacticiel