mirror of
https://github.com/macintoshplus/doc-fr.git
synced 2026-03-24 08:52:09 +01:00
1239 lines
43 KiB
XML
1239 lines
43 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- EN-Revision: ac83abe55f4da019036de5ec14400d674fa3f9f5 Maintainer: victor-prdh Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<chapter xml:id="datetime.formats" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<title>Formats supportés de temps et de dates</title>
|
|
|
|
<para>
|
|
Cette section décrit, dans un format de type BNF, tous les formats différents
|
|
que l'analyseur de <classname>DateTimeImmutable</classname>,
|
|
<classname>DateTime</classname>, <function>date_create_immutable</function>,
|
|
<function>date_create</function>, <function>date_parse</function>, et
|
|
<function>strtotime</function> est capable de comprendre.
|
|
Les formats sont groupés par sections.
|
|
Dans la plupart des cas, les formats de sections différentes, séparé par des
|
|
caractères d'espacement blanc, des virgules ou des points, peuvent être
|
|
utilisés dans la même chaîne date/moment. Pour chaque format supporté, un ou
|
|
plusieurs exemples sont donnés ainsi qu'une description du format correspondant.
|
|
Les caractères entre guillemets simples pour les formats sont insensibles à la
|
|
casse (<literal>'t'</literal> pourrait s'écrire <literal>t</literal> ou
|
|
<literal>T</literal>), les caractères écrits entre guillemets doubles, eux,
|
|
sont sensibles à la casse (<literal>"T"</literal> et seulement <literal>T</literal>).
|
|
</para>
|
|
<para>
|
|
Pour formatter des objets <classname>DateTimeImmutable</classname> et
|
|
<classname>DateTime</classname>, veuillez vous référer à la documentation
|
|
de la méthode <function>DateTimeInterface::format</function>.
|
|
</para>
|
|
|
|
<para>
|
|
Un ensemble de règles générales devrait être pris en compte.
|
|
</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<simpara>
|
|
L'analyseur, permet à chaque unité (année, mois, jour, heure, minute, seconde)
|
|
la plage entière de valeurs. Pour une année c'est juste 4 chiffres, pour un
|
|
mois c'est 0-12, pour un jour 0-31 et pour l'heure et les minutes c'est 0-59.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
60 est autorisé pour les secondes, car parfois des chaînes de dates avec
|
|
cette seconde intercalaire apparaisse. Mais PHP implémente le temps Unix
|
|
où "60" n'est pas un nombre de secondes valides et ainsi overflow.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
<function>strtotime</function> returns &false; si un des nombres et en-dehors
|
|
de la plage, et <function>DateTimeImmutable::__construct</function> lance
|
|
une exception.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
Si une chaîne contient une date, tous les éléments sont remis à 0.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
Tous les éléments de temps moins significatifs sont remis à 0 si n'importe
|
|
quel élément d'un temps est présent dans la chaîne donnée.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
L'analyseur est idiot, et n'effectue pas de vérification pour le rendre
|
|
plus rapide (et plus générique).
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
Outre les règles applicables aux éléments temporels individuels,
|
|
l'analyseur comprend également des
|
|
<link linkend="datetime.formats.compound">formats composés</link> plus
|
|
spécifiques, tels que l'analyse des horodatages Unix (<literal>@1690388256</literal>)
|
|
et des dates hebdomadaires ISO (<literal>2008-W28-3</literal>).
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Il y a une vérification additionnelle si une date invalide est fourni :
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
$res = date_parse("2015-09-31");
|
|
var_dump($res["warnings"]);
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
&example.outputs;
|
|
<screen>
|
|
<![CDATA[
|
|
array(1) {
|
|
[11] =>
|
|
string(27) "The parsed date was invalid"
|
|
}
|
|
]]>
|
|
</screen>
|
|
</informalexample>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Il est déjà possible de gérer c'est cas spéciaux, mais l'utilisation de
|
|
It is already possible to handle the edge cases, but then you need to use
|
|
<function>DateTimeImmutable::createFromFormat</function> est requis en
|
|
fournissant le format voulu.
|
|
<informalexample>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
$res = DateTimeImmutable::createFromFormat("Y-m-d", "2015-09-34");
|
|
var_dump($res);
|
|
]]>
|
|
</programlisting>
|
|
&example.outputs;
|
|
<screen>
|
|
<![CDATA[
|
|
object(DateTimeImmutable)#1 (3) {
|
|
["date"] =>
|
|
string(26) "2015-10-04 17:24:43.000000"
|
|
["timezone_type"] =>
|
|
int(3)
|
|
["timezone"] =>
|
|
string(13) "Europe/London"
|
|
}
|
|
]]>
|
|
</screen>
|
|
</informalexample>
|
|
</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
|
|
<!--Time Formats: {{{-->
|
|
<sect1 annotations="chunk:false" xml:id="datetime.formats.time">
|
|
<title>Formats pour les temps (Time)</title>
|
|
|
|
<para>
|
|
Cette page décrit les différents formats dans une syntaxe de type BNF
|
|
que les analyseurs de <classname>DateTimeImmutable</classname>,
|
|
<classname>DateTime</classname>, <function>date_create</function>,
|
|
<function>date_create_immutable</function>, et
|
|
<function>strtotime</function> comprennent.
|
|
</para>
|
|
<para>
|
|
Pour formatter des objets <classname>DateTimeImmutable</classname> et
|
|
<classname>DateTime</classname>, veuillez vous référer à la documentation
|
|
de la méthode <function>DateTimeInterface::format</function>.
|
|
</para>
|
|
|
|
<table>
|
|
<title>Symboles utilisés</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Formats</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><literal>frac</literal></entry>
|
|
<entry>. [0-9]+</entry>
|
|
<entry>".21342", ".85"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>hh</literal></entry>
|
|
<entry>"0"?[1-9] | "1"[0-2]</entry>
|
|
<entry>"04", "7", "12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>HH</literal></entry>
|
|
<entry>[01][0-9] | "2"[0-4]</entry>
|
|
<entry>"04", "07", "19"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>méridien</literal></entry>
|
|
<entry>[AaPp] .? [Mm] .? [\0\t ]</entry>
|
|
<entry>"A.m.", "pM", "am."</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>MM</literal></entry>
|
|
<entry>[0-5][0-9]</entry>
|
|
<entry>"00", "12", "59"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>II</literal></entry>
|
|
<entry>[0-5][0-9]</entry>
|
|
<entry>"00", "12", "59"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>espace</literal></entry>
|
|
<entry>[ \t]</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>tz</literal></entry>
|
|
<entry>"("? [A-Za-z]{1,6} ")"? | [A-Z][a-z]+([_/][A-Z][a-z]+)+</entry>
|
|
<entry>"CEST", "Europe/Amsterdam", "America/Indiana/Knox"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>tzcorrection</literal></entry>
|
|
<entry>"GMT"? [+-] <literal>hh</literal> ":"? <literal>MM</literal>?</entry>
|
|
<entry>"+0400", "GMT-07:00", "-07:00"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notation 12 heures</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Heures seules, avec méridien</entry>
|
|
<entry><literal>hh</literal> <literal>espace</literal>? <literal>méridien</literal></entry>
|
|
<entry>"4 am", "5PM"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures et minutes, avec méridien</entry>
|
|
<entry><literal>hh</literal> [.:] <literal>MM</literal> <literal>space</literal>? <literal>méridien</literal></entry>
|
|
<entry>"4:08 am", "7:19P.M."</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures, minutes et secondes avec méridien</entry>
|
|
<entry><literal>hh</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>espace</literal>? <literal>méridien</literal></entry>
|
|
<entry>"4:08:37 am", "7:19:19P.M."</entry>
|
|
</row>
|
|
<row>
|
|
<entry>MS SQL (Heures, minutes, secondes et fraction avec méridien)</entry>
|
|
<entry><literal>hh</literal> ":" <literal>MM</literal> ":" <literal>II</literal> [.:] [0-9]+ <literal>meridian</literal></entry>
|
|
<entry>"4:08:39:12313am"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notation 24 heures</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Heures et minutes</entry>
|
|
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal></entry>
|
|
<entry>"04:08", "19.19", "T23:43"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures et minutes, sans double-points</entry>
|
|
<entry>'t'? <literal>HH</literal> <literal>MM</literal></entry>
|
|
<entry>"0408", "t1919", "T2343"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures, minutes et secondes</entry>
|
|
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal></entry>
|
|
<entry>"04.08.37", "t19:19:19"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures, minutes et secondes, sans double-points</entry>
|
|
<entry>'t'? <literal>HH</literal> <literal>MM</literal> <literal>II</literal></entry>
|
|
<entry>"040837", "T191919"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures, minutes, secondes et fuseau horaire</entry>
|
|
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>space</literal>? ( <literal>tzcorrection</literal> | <literal>tz</literal> )</entry>
|
|
<entry>"040837CEST", "T191919-0700"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Heures, minutes, secondes et fraction</entry>
|
|
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>frac</literal></entry>
|
|
<entry>"04.08.37.81412", "19:19:19.532453"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Information de fuseau horaire</entry>
|
|
<entry><literal>tz</literal> | <literal>tzcorrection</literal></entry>
|
|
<entry>"CEST", "Europe/Amsterdam", "+0430", "GMT-06:00"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</sect1>
|
|
<!--}}}-->
|
|
|
|
<!--Date Formats: {{{-->
|
|
<sect1 annotations="chunk:false" xml:id="datetime.formats.date">
|
|
<title>Formats de dates</title>
|
|
|
|
<para>
|
|
Cette page décrit les différents formats dans une syntaxe de type BNF
|
|
que les analyseurs de <classname>DateTimeImmutable</classname>,
|
|
<classname>DateTime</classname>, <function>date_create</function>,
|
|
<function>date_create_immutable</function>, et
|
|
<function>strtotime</function> comprennent.
|
|
</para>
|
|
<para>
|
|
Pour formatter des objets <classname>DateTimeImmutable</classname> et
|
|
<classname>DateTime</classname>, veuillez vous référer à la documentation
|
|
de la méthode <function>DateTimeInterface::format</function>.
|
|
</para>
|
|
|
|
<table>
|
|
<title>Symboles utilisés</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><literal>suffixe des jours</literal></entry>
|
|
<entry>"st" | "nd" | "rd" | "th"</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>dd</literal></entry>
|
|
<entry>([0-2]?[0-9] | "3"[01]) <literal>daysuf</literal>?</entry>
|
|
<entry>"7th", "22nd", "31"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>DD</literal></entry>
|
|
<entry>"0" [0-9] | [1-2][0-9] | "3" [01]</entry>
|
|
<entry>"07", "31"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>m</literal></entry>
|
|
<entry>'january' | 'february' | 'march' | 'april' | 'may' | 'june' |
|
|
'july' | 'august' | 'september' | 'october' | 'november' | 'december' |
|
|
'jan' | 'feb' | 'mar' | 'apr' | 'may' | 'jun' | 'jul' | 'aug' | 'sep' |
|
|
'sept' | 'oct' | 'nov' | 'dec' | "I" | "II" | "III" | "IV" | "V" | "VI"
|
|
| "VII" | "VIII" | "IX" | "X" | "XI" | "XII"</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>M</literal></entry>
|
|
<entry>'jan' | 'feb' | 'mar' | 'apr' | 'may' | 'jun' | 'jul' | 'aug' |
|
|
'sep' | 'sept' | 'oct' | 'nov' | 'dec'</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>mm</literal></entry>
|
|
<entry>"0"? [0-9] | "1"[0-2]</entry>
|
|
<entry>"0", "04", "7", "12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>MM</literal></entry>
|
|
<entry>"0" [0-9] | "1"[0-2]</entry>
|
|
<entry>"00", "04", "07", "12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>y</literal></entry>
|
|
<entry>[0-9]{1,4}</entry>
|
|
<entry>"00", "78", "08", "8", "2008"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>yy</literal></entry>
|
|
<entry>[0-9]{2}</entry>
|
|
<entry>"00", "08", "78"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>YY</literal></entry>
|
|
<entry>[0-9]{4}</entry>
|
|
<entry>"2000", "2008", "1978"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>YYY</literal></entry>
|
|
<entry>[0-9]{5,19}</entry>
|
|
<entry>"81412", "20192"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Standards Formats</title>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>&Description;</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>ATOM</entry>
|
|
<entry>"2022-06-02T16:58:35+00:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>COOKIE</entry>
|
|
<entry>"Thursday, 02-Jun-2022 16:58:35 UTC"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>ISO8601</entry>
|
|
<entry>"2022-06-02T16:58:35+0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;822">RFC 822</link></entry>
|
|
<entry>"Thu, 02 Jun 22 16:58:35 +0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;850">RFC 850</link></entry>
|
|
<entry>"Thursday, 02-Jun-22 16:58:35 UTC"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;1036">RFC 1036</link></entry>
|
|
<entry>"Thu, 02 Jun 22 16:58:35 +0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;1123">RFC 1123</link></entry>
|
|
<entry>"Thu, 02 Jun 2022 16:58:35 +0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;2822">RFC 2822</link></entry>
|
|
<entry>"Thu, 02 Jun 2022 16:58:35 +0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;3339">RFC 3339</link></entry>
|
|
<entry>"2022-06-02T16:58:35+00:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;3339">RFC 3339</link> Extended</entry>
|
|
<entry>"2022-06-02T16:58:35.698+00:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><link xlink:href="&url.rfc;7231">RFC 7231</link></entry>
|
|
<entry>"Thu, 02 Jun 2022 16:58:35 GMT"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>RSS</entry>
|
|
<entry>"Thu, 02 Jun 2022 16:58:35 +0000"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>W3C</entry>
|
|
<entry>"2022-06-02T16:58:35+00:00"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notations localisées</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Mois américain et jour</entry>
|
|
<entry><literal>mm</literal> "/" <literal>dd</literal></entry>
|
|
<entry>"5/12", "10/27"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois américain, jour et année</entry>
|
|
<entry><literal>mm</literal> "/" <literal>dd</literal> "/" <literal>y</literal></entry>
|
|
<entry>"12/22/78", "1/17/2006", "1/17/6"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur quatre chiffres, mois et jour avec slashs</entry>
|
|
<entry><literal>YY</literal> "/" <literal>mm</literal> "/" <literal>dd</literal></entry>
|
|
<entry>"2008/6/30", "1978/12/22"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur quatre chiffres et mois (GNU)</entry>
|
|
<entry><literal>YY</literal> "-" <literal>mm</literal></entry>
|
|
<entry>"2008-6", "2008-06", "1978-12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année, mois et jour avec tirets</entry>
|
|
<entry><literal>y</literal> "-" <literal>mm</literal> "-" <literal>dd</literal></entry>
|
|
<entry>"2008-6-30", "78-12-22", "8-6-21"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jour, mois et année sur quatre chiffres, avec des points, des tabulations ou des tirets</entry>
|
|
<entry><literal>dd</literal> [.\t-] <literal>mm</literal> [.-] <literal>YY</literal></entry>
|
|
<entry>"30-6-2008", "22.12.1978"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jour, mois et année sur deux chiffres, avec des points ou des tabulations</entry>
|
|
<entry><literal>dd</literal> [.\t] <literal>mm</literal> "." <literal>yy</literal></entry>
|
|
<entry>"30.6.08", "22\t12.78"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jour, mois textuel et année</entry>
|
|
<entry><literal>dd</literal> ([ \t.-])* <literal>m</literal> ([ \t.-])* <literal>y</literal></entry>
|
|
<entry>"30-June 2008", "22DEC78", "14 III 1879"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois textuel et année sur quatre chiffres (le jour sera le 1)</entry>
|
|
<entry><literal>m</literal> ([ \t.-])* <literal>YY</literal></entry>
|
|
<entry>"June 2008", "DEC1978", "March 1879"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur quatre chiffres et mois textuel (le jour sera le 1)</entry>
|
|
<entry><literal>YY</literal> ([ \t.-])* <literal>m</literal></entry>
|
|
<entry>"2008 June", "1978-XII", "1879.MArCH"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois textuel, jour et année</entry>
|
|
<entry><literal>m</literal> ([ .\t-])* <literal>dd</literal> [,.stndrh\t ]+ <literal>y</literal></entry>
|
|
<entry>"July 1st, 2008", "April 17, 1790", "May.9,78"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois textuel et jour</entry>
|
|
<entry><literal>m</literal> ([ .\t-])* <literal>dd</literal> [,.stndrh\t ]*</entry>
|
|
<entry>"July 1st,", "Apr 17", "May.9"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Jour et mois textuel</entry>
|
|
<entry><literal>dd</literal> ([ .\t-])* <literal>m</literal></entry>
|
|
<entry>"1 July", "17 Apr", "9.May"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois abrégé, jour et année</entry>
|
|
<entry><literal>M</literal> "-" <literal>DD</literal> "-" <literal>y</literal></entry>
|
|
<entry>"May-09-78", "Apr-17-1790"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année, mois abrégé et jour</entry>
|
|
<entry><literal>y</literal> "-" <literal>M</literal> "-" <literal>DD</literal></entry>
|
|
<entry>"78-Dec-22", "1814-MAY-17"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année (et juste l'année)</entry>
|
|
<entry><literal>YY</literal></entry>
|
|
<entry>"1978", "2008"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année (développé, 5-19 chiffres avec signe)</entry>
|
|
<entry>[+-] <literal>YYY</literal></entry>
|
|
<entry>"-81120", "+20192"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mois textuel (et juste le mois)</entry>
|
|
<entry><literal>m</literal></entry>
|
|
<entry>"March", "jun", "DEC"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notations ISO8601</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Année, mois et jour sur huit chiffres</entry>
|
|
<entry><literal>YY</literal> <literal>MM</literal> <literal>DD</literal></entry>
|
|
<entry>"15810726", "19780417", "18140517"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur quatre chiffres, mois et jour avec des slashes</entry>
|
|
<entry><literal>YY</literal> "/" <literal>MM</literal> "/" <literal>DD</literal></entry>
|
|
<entry>"2008/06/30", "1978/12/22"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur deux chiffres, mois et jour avec des tirets</entry>
|
|
<entry><literal>yy</literal> "-" <literal>MM</literal> "-" <literal>DD</literal></entry>
|
|
<entry>"08-06-30", "78-12-22"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année sur quatre chiffres avec un signe optionnel, mois et jour</entry>
|
|
<entry>[+-]? <literal>YY</literal> "-" <literal>MM</literal> "-" <literal>DD</literal></entry>
|
|
<entry>"-0002-07-26", "+1978-04-17", "1814-05-17"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année à cinq chiffres avec le signe, le mois et le jour requis</entry>
|
|
<entry>[+-] <literal>YYY</literal> "-" <literal>MM</literal> "-" <literal>DD</literal></entry>
|
|
<entry>"-81120-02-26", "+20192-04-17"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<note>
|
|
<para>
|
|
Pour les formats <literal>y</literal> et <literal>yy</literal>, les années
|
|
avant 100 sont considérées d'une manière spéciale lorsque les
|
|
symboles <literal>y</literal> ou <literal>yy</literal> sont utilisés.
|
|
Si l'année est comprise entre 0 (inclusif) et 69 (inclusif),
|
|
2000 sera ajouté. Si l'année est comprise entre 70 (inclusif) et
|
|
99 (inclusif) alors 1900 sera ajouté. Cela signifie que "00-01-01" est
|
|
interprété comme "2000-01-01".
|
|
</para>
|
|
</note>
|
|
|
|
<note>
|
|
<para>
|
|
Le format "Jour, mois et année sur deux chiffres avec tabulations ou points"
|
|
(<literal>dd</literal> [.\t] <literal>mm</literal> "."
|
|
<literal>yy</literal>) ne fonctionne que pour des valeurs d'années de 61 (inclusif)
|
|
à 99 (inclusif) - en dehors de ces bornes, le <emphasis>format du temps</emphasis>
|
|
"<literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>SS</literal>" a une
|
|
précédence plus forte et primera.
|
|
</para>
|
|
</note>
|
|
|
|
<note>
|
|
<para>
|
|
Le format "Année (et juste l'année)" ne fonctionne que si la chaine qui
|
|
représente le temps a déjà été trouvée, sinon le format est reconnu comme
|
|
<literal>HH</literal> <literal>MM</literal>.
|
|
</para>
|
|
</note>
|
|
|
|
<caution>
|
|
<para>
|
|
Il est possible d'ajouter ou soustraire une retenue pour les formats
|
|
<literal>dd</literal> et <literal>DD</literal>. Le jour 0 signifie le dernier
|
|
jour du mois précédent, les retenues positives compteront le mois suivant.
|
|
Ainsi, "2008-08-00" est équivalent à "2008-07-31" et "2008-06-31" est équivalent
|
|
à "2008-07-01" (juin ne possède que 30 jours).
|
|
</para>
|
|
<para>
|
|
Il est à noter que la plage de jour est limitée à 0-31 comme
|
|
indiqué par l'expression régulière ci-dessus. Ainsi, "2008-06-32" n'est
|
|
pas une chaîne de date valide, par exemple.
|
|
</para>
|
|
<para>
|
|
Il est aussi possible de jouer avec les retenues des formats <literal>mm</literal> et
|
|
<literal>MM</literal> grâce à la valeur 0. Une valeur de mois de 0 signifie Décembre
|
|
de l'année précédente. Par exemple "2008-00-22" est équivalent à "2007-12-22".
|
|
</para>
|
|
<para>
|
|
Si vous combinez les deux notions précédentes et utilisez une retenue négative sur le jour
|
|
et le mois, alors il se passe ceci : "2008-00-00" est converti d'abord vers
|
|
"2007-12-00" puis vers "2007-11-30". Ceci arrive aussi avec la chaine
|
|
"0000-00-00" qui est alors transformée vers "-0001-11-30" (l'année -1 dans le calendrier
|
|
ISO 8601, qui est 2 BC dans le calendrier Grégorien).
|
|
</para>
|
|
</caution>
|
|
</sect1>
|
|
<!--}}}-->
|
|
|
|
<!--Compound Formats: {{{-->
|
|
<sect1 annotations="chunk:false" xml:id="datetime.formats.compound">
|
|
<title>Formats composés</title>
|
|
|
|
<para>
|
|
Cette page décrit les différents formats dans une syntaxe de type BNF que les analyseurs de
|
|
<classname>DateTimeImmutable</classname>, <classname>DateTime</classname>,
|
|
<function>date_create</function>,
|
|
<function>date_create_immutable</function>, et
|
|
<function>strtotime</function> comprennent.
|
|
</para>
|
|
<para>
|
|
Pour formatter des objets <classname>DateTimeImmutable</classname> et
|
|
<classname>DateTime</classname>, veuillez vous référer à la documentation
|
|
de la méthode <function>DateTimeInterface::format</function>.
|
|
</para>
|
|
|
|
<table>
|
|
<title>Symboles utilisés</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Formats</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><literal>DD</literal></entry>
|
|
<entry>"0" [0-9] | [1-2][0-9] | "3" [01]</entry>
|
|
<entry>"02", "12", "31"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>doy</literal></entry>
|
|
<entry>"00"[1-9] | "0"[1-9][0-9] | [1-2][0-9][0-9] | "3"[0-5][0-9] | "36"[0-6]</entry>
|
|
<entry>"001", "012", "180", "350", "366"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>frac</literal></entry>
|
|
<entry>. [0-9]+</entry>
|
|
<entry>".21342", ".85"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>hh</literal></entry>
|
|
<entry>"0"?[1-9] | "1"[0-2]</entry>
|
|
<entry>"04", "7", "12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>HH</literal></entry>
|
|
<entry>[01][0-9] | "2"[0-4]</entry>
|
|
<entry>"04", "07", "19"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>méridien</literal></entry>
|
|
<entry>[AaPp] .? [Mm] .? [\0\t ]</entry>
|
|
<entry>"A.m.", "pM", "am."</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>ii</literal></entry>
|
|
<entry>[0-5]?[0-9]</entry>
|
|
<entry>"04", "8", "59"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>II</literal></entry>
|
|
<entry>[0-5][0-9]</entry>
|
|
<entry>"04", "08", "59"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>M</literal></entry>
|
|
<entry>'jan' | 'feb' | 'mar' | 'apr' | 'may' | 'jun' | 'jul' | 'aug' | 'sep' | 'sept' | 'oct' | 'nov' | 'dec'</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>MM</literal></entry>
|
|
<entry>[0-1][0-9]</entry>
|
|
<entry>"00", "12"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>espace</literal></entry>
|
|
<entry>[ \t]</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>ss</literal></entry>
|
|
<entry>([0-5]?[0-9])|60</entry>
|
|
<entry>"04", "8", "59", "60" (seconde intercalaire)</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>SS</literal></entry>
|
|
<entry>[0-5][0-9]</entry>
|
|
<entry>"04", "08", "59"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>W</literal></entry>
|
|
<entry>"0"[1-9] | [1-4][0-9] | "5"[0-3]</entry>
|
|
<entry>"05", "17", "53"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>tzcorrection</literal></entry>
|
|
<entry>"GMT"? [+-] <literal>hh</literal> ":"? <literal>II</literal>?</entry>
|
|
<entry>"+0400", "GMT-07:00", "-07:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>YY</literal></entry>
|
|
<entry>[0-9]{4}</entry>
|
|
<entry>"2000", "2008", "1978"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notations localisées</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Format de log commun</entry>
|
|
<entry><literal>dd</literal> "/" <literal>M</literal> "/" <literal>YY</literal> : <literal>HH</literal> ":" <literal>II</literal> ":" <literal>SS</literal> <literal>space</literal> <literal>tzcorrection</literal></entry>
|
|
<entry>"10/Oct/2000:13:55:36 -0700"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>EXIF</entry>
|
|
<entry><literal>YY</literal> ":" <literal>MM</literal> ":" <literal>DD</literal> " " <literal>HH</literal> ":" <literal>II</literal> ":" <literal>SS</literal></entry>
|
|
<entry>"2008:08:07 18:11:31"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année ISO avec semaine ISO</entry>
|
|
<entry><literal>YY</literal> "-"? "W" <literal>W</literal></entry>
|
|
<entry>"2008W27", "2008-W28"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Année ISO avec semaine ISO et jour</entry>
|
|
<entry><literal>YY</literal> "-"? "W" <literal>W</literal> "-"? [0-7]</entry>
|
|
<entry>"2008W273", "2008-W28-3"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>MySQL</entry>
|
|
<entry><literal>YY</literal> "-" <literal>MM</literal> "-" <literal>DD</literal> " " <literal>HH</literal> ":" <literal>II</literal> ":" <literal>SS</literal></entry>
|
|
<entry>"2008-08-07 18:11:31"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PostgreSQL : Année avec jour de l'année</entry>
|
|
<entry><literal>YY</literal> "."? <literal>doy</literal></entry>
|
|
<entry>"2008.197", "2008197"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>SOAP</entry>
|
|
<entry><literal>YY</literal> "-" <literal>MM</literal> "-" <literal>DD</literal> "T" <literal>HH</literal> ":" <literal>II</literal> ":" <literal>SS</literal> <literal>frac</literal> <literal>tzcorrection</literal>?</entry>
|
|
<entry>"2008-07-01T22:35:17.02", "2008-07-01T22:35:17.03+08:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Unix Timestamp</entry>
|
|
<entry>"@" "-"? [0-9]+</entry>
|
|
<entry>"@1215282385"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Unix Timestamp avec les microsecondes</entry>
|
|
<entry>"@" "-"? [0-9]+ "." [0-9]{0,6}</entry>
|
|
<entry>"@1607974647.503686"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>XMLRPC</entry>
|
|
<entry><literal>YY</literal> <literal>MM</literal> <literal>DD</literal> "T" <literal>hh</literal> ":" <literal>II</literal> ":" <literal>SS</literal></entry>
|
|
<entry>"20080701T22:38:07", "20080701T9:38:07"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>XMLRPC (Compact)</entry>
|
|
<entry><literal>YY</literal> <literal>MM</literal> <literal>DD</literal> 't' <literal>hh</literal> <literal>II</literal> <literal>SS</literal></entry>
|
|
<entry>"20080701t223807", "20080701T093807"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>WDDX</entry>
|
|
<entry><literal>YY</literal> "-" <literal>mm</literal> "-" <literal>dd</literal> "T" <literal>hh</literal> ":" <literal>ii</literal> ":" <literal>ss</literal></entry>
|
|
<entry>"2008-7-1T9:3:37"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<note>
|
|
<para>
|
|
Le "W" dans les formats "Année ISO avec semaine ISO" et "Année ISO avec semaine ISO et jour"
|
|
est sensible à la casse ; vous ne pouvez utiliser que la majuscule "W".
|
|
</para>
|
|
<para>
|
|
Le "T" dans les formats SOAP, XMRPC et WDDX est sensible à la casse ; utilisez toujours
|
|
la majuscule "T".
|
|
</para>
|
|
<para>
|
|
Le format timestamp Unix définit le fuseau horaire à UTC.
|
|
</para>
|
|
</note>
|
|
</sect1>
|
|
<!--}}}-->
|
|
|
|
<!--Relative Formats: {{{-->
|
|
<sect1 annotations="chunk:false" xml:id="datetime.formats.relative">
|
|
<title>Formats relatifs</title>
|
|
|
|
<para>
|
|
Cette page décrit les différents formats dans une syntaxe de type BNF
|
|
que les analyseurs de <classname>DateTimeImmutable</classname>,
|
|
<classname>DateTime</classname>, <function>date_create</function>,
|
|
<function>date_create_immutable</function>, et
|
|
<function>strtotime</function> comprennent.
|
|
</para>
|
|
<para>
|
|
Pour formatter des objets <classname>DateTimeImmutable</classname> et
|
|
<classname>DateTime</classname>, veuillez vous référer à la documentation
|
|
de la méthode <function>DateTimeInterface::format</function>.
|
|
</para>
|
|
|
|
<table>
|
|
<title>Symboles utilisés</title>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Description</entry>
|
|
<entry>Format</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry><literal>dayname</literal></entry>
|
|
<entry>'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' |
|
|
'friday' | 'saturday' | 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' |
|
|
'sat'</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>daytext</literal></entry>
|
|
<entry>'weekday' | 'weekdays'</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>number</literal></entry>
|
|
<entry>[+-]?[0-9]+</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>ordinal</literal></entry>
|
|
<entry>'first' | 'second' | 'third' | 'fourth' | 'fifth' | 'sixth' |
|
|
'seventh' | 'eighth' | 'ninth' | 'tenth' | 'eleventh' | 'twelfth' |
|
|
'next' | 'last' | 'previous' | 'this'</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>reltext</literal></entry>
|
|
<entry>'next' | 'last' | 'previous' | 'this'</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>space</literal></entry>
|
|
<entry>[ \t]+</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>unit</literal></entry>
|
|
<entry>'ms' | 'µs' | (( 'msec' | 'millisecond' | 'µsec' | 'microsecond'
|
|
| 'usec' | 'sec' | 'second' | 'min' | 'minute' | 'hour' | 'day' |
|
|
'fortnight' | 'forthnight' | 'month' | 'year') 's'?) | 'weeks' |
|
|
<literal>daytext</literal>
|
|
</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<table>
|
|
<title>Notations basées sur le jour</title>
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Format</entry>
|
|
<entry>Description</entry>
|
|
<entry>Exemples</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>'yesterday'</entry>
|
|
<entry>Minuit d'hier</entry>
|
|
<entry>"yesterday 14:00"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'midnight'</entry>
|
|
<entry>Le temps est affecté à 00:00:00</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>'today'</entry>
|
|
<entry>Le temps est affecté à 00:00:00</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>'now'</entry>
|
|
<entry>Maintenant</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>'noon'</entry>
|
|
<entry>Le temps est affecté à 12:00:00</entry>
|
|
<entry>"yesterday noon"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'tomorrow'</entry>
|
|
<entry>Minuit de demain</entry>
|
|
<entry></entry>
|
|
</row>
|
|
<row>
|
|
<entry>'back of' <literal>hour</literal></entry>
|
|
<entry>15 minutes avant l'heure précisée</entry>
|
|
<entry>"back of 7pm", "back of 15"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'front of' <literal>hour</literal></entry>
|
|
<entry>15 minutes après l'heure spécifiée</entry>
|
|
<entry>"front of 5am", "front of 23"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'first day of'?</entry>
|
|
<entry>Affecte le jour du premier jour du mois courant. Il est généralement préférable
|
|
d'utiliser cette expression avec le nom du mois qui suit, car elle ne concerne que le mois en cours.</entry>
|
|
<entry>"first day of January 2008"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'last day of'?</entry>
|
|
<entry>Affecte le jour du dernier jour du mois courant. Il est généralement préférable
|
|
d'utiliser cette expression avec le nom du mois qui suit, car elle ne concerne que le mois en cours.</entry>
|
|
<entry>"last day of next month"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>ordinal</literal> <literal>space</literal> <literal>dayname</literal> <literal>space</literal> 'of'</entry>
|
|
<entry>Calcule le <literal>x</literal>-ème jour de semaine du mois en cours.</entry>
|
|
<entry>"first sat of July 2008"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'last' <literal>space</literal> <literal>dayname</literal> <literal>space</literal> 'of'</entry>
|
|
<entry>Calcule le <emphasis>dernier</emphasis> jour de semaine du mois en cours.</entry>
|
|
<entry>"last sat of July 2008"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>number</literal> <literal>space</literal>? (<literal>unit</literal> | 'week')</entry>
|
|
<entry>Gère des temps relatifs dont la valeur est dénombrée.</entry>
|
|
<entry>"+5 weeks", "12 day", "-7 weekdays"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>(<literal>ordinal</literal> | <literal>reltext</literal>) <literal>space</literal> <literal>unit</literal></entry>
|
|
<entry>Gère les éléments temporels relatifs dont la valeur est un texte.
|
|
<literal>last</literal> et <literal>previous</literal> sont équivalents à
|
|
<literal>-1</literal>, <literal>this</literal> à 0, et <literal>next</literal> à
|
|
<literal>+1</literal>.</entry>
|
|
<entry>"fifth day", "second month", "last day", "previous year"</entry>
|
|
</row>
|
|
<row>
|
|
<entry>'ago'</entry>
|
|
<entry>Utilise dans le passé toute description de temps relatif ('il y a').</entry>
|
|
<entry>"2 days ago", "8 days ago 14:00", "2 months 5 days ago", "2 months ago 5 days", "2 days ago"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>dayname</literal></entry>
|
|
<entry>Se déplace vers le prochain jour indiqué.(Voir <link
|
|
linkend="datetime.formats.relative.dayname-note">note</link>)</entry>
|
|
<entry>"Monday"</entry>
|
|
</row>
|
|
<row>
|
|
<entry><literal>reltext</literal> <literal>space</literal> 'week'</entry>
|
|
<entry>Gère le format spécial "weekday + last/this/next week".</entry>
|
|
<entry>"Monday next week"</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
|
|
<note>
|
|
<para>
|
|
Les expressions relatives sont toujours traitées <emphasis>après</emphasis>
|
|
les expressions non relatives. Ceci fait en sorte que "+1 week july 2008" et "july
|
|
2008 +1 week" sont équivalents.
|
|
</para>
|
|
<para>
|
|
"yesterday", "midnight", "today", "noon" et "tomorrow" sont des exceptions à cette
|
|
règle. Notez que "tomorrow 11:00" et "11:00 tomorrow" sont différents. Soit la date
|
|
d'aujourd'hui à "July 23rd, 2008", la première expression donne "2008-07-24 11:00"
|
|
alors que la seconde donnera "2008-07-24 00:00". La raison est que ces cinq expressions
|
|
influencent directement la date courante.
|
|
</para>
|
|
<para>
|
|
Les mots clés tel que "first day of" dépendent du contexte dans laquelle
|
|
la chaîne de format relative est utilisé. Si utilisé avec une méthode
|
|
statique ou une fonction, le référent est l'horodatage actuel du système.
|
|
Cependant, si utilisé dans <function>DateTime::modify</function> ou
|
|
<function>DateTimeImmutable::modify</function>, le référent est l'objet
|
|
sur lequel la méthode <literal>modify()</literal> est appelée.
|
|
</para>
|
|
</note>
|
|
|
|
<note>
|
|
<para xml:id="datetime.formats.relative.dayname-note">>
|
|
Notez les remarques qui suivent lorsque le jour de semaine courant est le même que le
|
|
jour de semaine utilisé dans la chaine de date/time. Le jour de semaine courant aurait
|
|
pu être recalculé par rapport aux parties non relatives de la chaine date/time.
|
|
</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>dayname</literal>" n'avance <emphasis>pas</emphasis> vers un autre
|
|
jour. (Exemple : "Wed July 23rd, 2008" signifie "2008-07-23").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>number</literal> <literal>dayname</literal>" n'avance
|
|
<emphasis>pas</emphasis> vers un autre jour. (Exemple : "1
|
|
wednesday july 23rd, 2008" signifie "2008-07-23").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>number</literal> week <literal>dayname</literal>" ajoutera
|
|
d'abord le nombre de semaines, mais n'avancera <emphasis>pas</emphasis>
|
|
vers un autre jour. Dans ce cas "<literal>number</literal>
|
|
week" et "<literal>dayname</literal>" sont deux blocs distincts.
|
|
(Exemple : "+1 week wednesday july 23rd, 2008" signifie "2008-07-30").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>ordinal</literal> <literal>dayname</literal>"
|
|
<emphasis>avance</emphasis> vers un autre jour. (Exemple : "first
|
|
wednesday july 23rd, 2008" signifie "2008-07-30").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>number</literal> week <literal>ordinal</literal>
|
|
<literal>dayname</literal>" ajoutera d'abord le nombre de semaines
|
|
et ensuite <emphasis>avancera</emphasis> vers un autre jour.
|
|
Dans ce cas, "<literal>number</literal> week" et
|
|
"<literal>ordinal</literal> <literal>dayname</literal>" sont deux blocs
|
|
distincts. (Exemple : "+1 week first wednesday july 23rd,
|
|
2008" signifie "2008-08-06").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>ordinal</literal> <literal>dayname</literal> 'of' "
|
|
n'avance <emphasis>pas</emphasis> vers un autre jour. (Exemple :
|
|
"first wednesday of july 23rd, 2008" signifie "2008-07-02" car la phrase
|
|
avec 'of' remet à zéro le jour du mois vers '1' et le '23' sera ignoré).
|
|
</simpara>
|
|
</listitem>
|
|
</orderedlist>
|
|
<para>
|
|
Notez aussi que le "of" dans "<literal>ordinal</literal>
|
|
<literal>space</literal> <literal>dayname</literal>
|
|
<literal>space</literal> 'of' " et "'last' <literal>space</literal>
|
|
<literal>dayname</literal> <literal>espace</literal> 'of' " fait quelque
|
|
chose de spécial.
|
|
</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<simpara>
|
|
Il affecte le jour du mois à 1.
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>ordinal</literal> <literal>dayname</literal> 'of' " n'avance
|
|
<emphasis>pas</emphasis> vers un autre jour. (Exemple : "first
|
|
tuesday of july 2008" signifie "2008-07-01").
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"<literal>ordinal</literal> <literal>dayname</literal> "
|
|
<emphasis>avance</emphasis> vers un autre jour. (Exemple : "first
|
|
tuesday july 2008" signifie "2008-07-08", voyez aussi le point numéro
|
|
4 de la liste ci-dessus).
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"'last' <literal>dayname</literal> 'of' " prend le dernier
|
|
<literal>dayname</literal> du mois courant. (Exemple : "last
|
|
wed of july 2008" signifie "2008-07-30")
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
"'last' <literal>dayname</literal>" prend le dernier
|
|
<literal>dayname</literal> à partir du jour actuel. (Exemple : "last
|
|
wed july 2008" signifie "2008-06-25"; "july 2008" affecte d'abord la date courante
|
|
à "2008-07-01" et ensuite "last wed" remonte au dernier mercredi qui est le
|
|
"2008-06-25").
|
|
</simpara>
|
|
</listitem>
|
|
</orderedlist>
|
|
</note>
|
|
<note>
|
|
<para>
|
|
Les valeurs relatives des mois calculés sont basées sur le nombre de jours des mois que
|
|
l'on utilise. Par exemple, "+2 month 2011-11-30", donnera comme résultat la date "2012-01-30".
|
|
Ceci est du au fait que le mois de novembre comporte 30 jours, et
|
|
que le mois de décembre en comporte 31, soit un ajout total de 61 jours.
|
|
</para>
|
|
</note>
|
|
<note>
|
|
<para>
|
|
<literal>number</literal> est un nombre <emphasis>entier</emphasis> ; si un
|
|
nombre décimal est donné, le point (ou la virgule) sera probablement interprété
|
|
comme un délimiteur.
|
|
Par exemple, <literal>'+1.5 hours'</literal> sera analysé en tant que
|
|
<literal>'+1 5 hours'</literal>, et non pas comme <literal>'+1 hour +30 minutes'</literal>.
|
|
</para>
|
|
</note>
|
|
|
|
<sect2 role="changelog">
|
|
&reftitle.changelog;
|
|
<para>
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>&Version;</entry>
|
|
<entry>&Description;</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>8.2.0</entry>
|
|
<entry>
|
|
<literal>number</literal> n'accepte plus plusieurs signes,
|
|
exemple <literal>+-2</literal>.
|
|
</entry>
|
|
</row>
|
|
<row>
|
|
<entry>7.0.8</entry>
|
|
<entry>
|
|
Les semaines commencent toujours le lundi. Autrefois, le dimanche était
|
|
également considéré pour commencer une semaine.
|
|
</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
<!--}}}-->
|
|
|
|
</chapter>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=marker fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|
|
|