1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-25 07:52:21 +01:00
Files
archived-doc-es/reference/datetime/formats.xml
Pedro Antonio Gil Rodríguez 98ab94cfec Actualización a la última versión
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@337068 c90b9560-bf6c-de11-be94-00142212c4b1
2015-06-27 21:42:03 +00:00

980 lines
34 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 4f5dbb13fa4e1db4cc7dbc66a60295809ee7d9d6 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="datetime.formats" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Formatos de fecha y hora admitidos</title>
<para>
Esta sección describe todos los formatos diferentes que entiende el analizador de
<function>strtotime</function>, de <classname>DateTime</classname>
y de <function>date_create</function>. Los formatos
están agrupados por secciones. En la mayoría de los casos, se pueden emplear los
formatos de secciones diferentes en la misma cadena de fecha/hora. Se proporcionan
ejemplos para cada uno de los formatos admitidos, así como
una descripción del formato. En los formatos, los caracteres entre comillas simples
son insensibles a mayúsculas-minúsculas, (<literal>'t'</literal> podría
ser <literal>t</literal> o <literal>T</literal>), y los caracteres entre
comillas dobles son sensibles a mayúsculas-minúsculas (<literal>"T"</literal> es solamente
<literal>T</literal>).
</para>
<!--Time Formats: {{{-->
<sect1 xml:id="datetime.formats.time">
<title>Formatos de Hora</title>
<para>
Esta página describe los diferentes formatos de hora que entiede el analizador de
<function>strtotime</function>, <classname>DateTime</classname> y
<function>date_create</function>.
</para>
<table>
<title>Símbolos empleados</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formatos</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>fracción</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", "7", "19"</entry>
</row>
<row>
<entry><literal>meridiano</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>espacio</literal></entry>
<entry>[ \t]</entry>
<entry></entry>
</row>
<row>
<entry><literal>zona horaria (zh)</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>corrección de la zh</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>Notación de 12 Horas</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>Solamente hora, con meridiano</entry>
<entry><literal>hh</literal> <literal>espacio</literal>? <literal>meridiano</literal></entry>
<entry>"4 am", "5PM"</entry>
</row>
<row>
<entry>Horas y minutos, con meridiano</entry>
<entry><literal>hh</literal> [.:] <literal>MM</literal> <literal>espacio</literal>? <literal>meridiano</literal></entry>
<entry>"4:08 am", "7:19P.M."</entry>
</row>
<row>
<entry>Horas, minutos y segundos, con meridiano</entry>
<entry><literal>hh</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>espacio</literal>? <literal>meridiano</literal></entry>
<entry>"4:08:37 am", "7:19:19P.M."</entry>
</row>
<row>
<entry>MS SQL (Horas, minutos, segundos y fracción con meridiano), únicamente PHP 5.3 y posterior</entry>
<entry><literal>hh</literal> ":" <literal>MM</literal> ":" <literal>II</literal> [.:] [0-9]+ <literal>meridiano</literal></entry>
<entry>"4:08:39:12313am"</entry>
</row>
</tbody>
</tgroup>
</table>
<table>
<title>Notación de 24 Horas</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>Horas y minutos</entry>
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal></entry>
<entry>"04:08", "19.19", "T23:43"</entry>
</row>
<row>
<entry>Horas y minutos, sin dos puntos</entry>
<entry>'t'? <literal>HH</literal> <literal>MM</literal></entry>
<entry>"0408", "t1919", "T2343"</entry>
</row>
<row>
<entry>Horas, minutos y segundos</entry>
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal></entry>
<entry>"04.08.37", "t19:19:19"</entry>
</row>
<row>
<entry>Horas, minutos y segundos, sin dos puntos</entry>
<entry>'t'? <literal>HH</literal> <literal>MM</literal> <literal>II</literal></entry>
<entry>"040837", "T191919"</entry>
</row>
<row>
<entry>Horas, minutos, segundos y zona horaria</entry>
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>espacio</literal>? ( <literal>corrección de la zh</literal> | <literal>zh</literal> )</entry>
<entry>"040837CEST", "T191919-0700"</entry>
</row>
<row>
<entry>Horas, minutos, segundos y fracción</entry>
<entry>'t'? <literal>HH</literal> [.:] <literal>MM</literal> [.:] <literal>II</literal> <literal>fracción</literal></entry>
<entry>"04.08.37.81412", "19:19:19.532453"</entry>
</row>
<row>
<entry>Información de la zona horaria</entry>
<entry><literal>zh</literal> | <literal>corrección de la zh</literal></entry>
<entry>"CEST", "Europe/Amsterdam", "+0430", "GMT-06:00"</entry>
</row>
</tbody>
</tgroup>
</table>
</sect1>
<!--}}}-->
<!--Date Formats: {{{-->
<sect1 xml:id="datetime.formats.date">
<title>Formatos de fecha</title>
<para>
Esta página describe los diferentes formatos de fecha que entiede el analizador de
<function>strtotime</function>, <classname>DateTime</classname> y
<function>date_create</function>.
</para>
<table>
<title>Símbolos empleados</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>sufijos de día (en inglés)</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>sufijos de día</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>
</tbody>
</tgroup>
</table>
<table>
<title>Notaciones regionales</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>Mes y día americanos</entry>
<entry><literal>mm</literal> "/" <literal>dd</literal></entry>
<entry>"5/12", "10/27"</entry>
</row>
<row>
<entry>Mes, día y año americanos</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>Año de cuatro dígitos, mes y día con barras</entry>
<entry><literal>YY</literal> "/" <literal>mm</literal> "/" <literal>dd</literal></entry>
<entry>"2008/6/30", "1978/12/22"</entry>
</row>
<row>
<entry>Año de cuatro dígitos y mes (GNU)</entry>
<entry><literal>YY</literal> "-" <literal>mm</literal></entry>
<entry>"2008-6", "2008-06", "1978-12"</entry>
</row>
<row>
<entry>Año, mes y día con guiones</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>Día, mes y año de cuatro dígitos, con puntos, tabulaciones o guiones</entry>
<entry><literal>dd</literal> [.\t-] <literal>mm</literal> [.-] <literal>YY</literal></entry>
<entry>"30-6-2008", "22.12\t1978"</entry>
</row>
<row>
<entry>Día, mes y año de dos dígitos, con puntos o tabulaciones</entry>
<entry><literal>dd</literal> [.\t] <literal>mm</literal> "." <literal>yy</literal></entry>
<entry>"30.6.08", "22\t12\t78"</entry>
</row>
<row>
<entry>Día, mes textual y año</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>Mes textual y año de cuatro dígitos (el día se restablece a 1)</entry>
<entry><literal>m</literal> ([ \t.-])* <literal>YY</literal></entry>
<entry>"June 2008", "DEC1978", "March 1879"</entry>
</row>
<row>
<entry>Año de cuatro dígitos y mes textual (el día se restablece a 1)</entry>
<entry><literal>YY</literal> ([ \t.-])* <literal>m</literal></entry>
<entry>"2008 June", "1978-XII", "1879.MArCH"</entry>
</row>
<row>
<entry>Mes textual, día y año</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>Mes textual y día</entry>
<entry><literal>m</literal> ([ .\t-])* <literal>dd</literal> [,.stndrh\t ]*</entry>
<entry>"July 1st,", "Apr 17", "May.9"</entry>
</row>
<row>
<entry>Día y mes textual</entry>
<entry><literal>d</literal> ([ .\t-])* <literal>m</literal></entry>
<entry>"1 July", "17 Apr", "9.May"</entry>
</row>
<row>
<entry>Abreviatura de mes, día y año</entry>
<entry><literal>M</literal> "-" <literal>DD</literal> "-" <literal>y</literal></entry>
<entry>"May-09-78", "Apr-17-1790"</entry>
</row>
<row>
<entry>Año, abreviatura de mes y día</entry>
<entry><literal>y</literal> "-" <literal>M</literal> "-" <literal>DD</literal></entry>
<entry>"78-Dec-22", "1814-MAY-17"</entry>
</row>
<row>
<entry>Año (y sólo el año)</entry>
<entry><literal>YY</literal></entry>
<entry>"1978", "2008"</entry>
</row>
<row>
<entry>Mes textual (y sólo el mes)</entry>
<entry><literal>m</literal></entry>
<entry>"March", "jun", "DEC"</entry>
</row>
</tbody>
</tgroup>
</table>
<table>
<title>Notaciones de la ISO 8601</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>Año, mes y día, de ocho dígitos</entry>
<entry><literal>YY</literal> <literal>MM</literal> <literal>DD</literal></entry>
<entry>"15810726", "19780417", "18140517"</entry>
</row>
<row>
<entry>Año de cuatro dígitos, mes y día con barras</entry>
<entry><literal>YY</literal> "/" <literal>MM</literal> "/" <literal>DD</literal></entry>
<entry>"2008/06/30", "1978/12/22"</entry>
</row>
<row>
<entry>Año de dos dígitos, mes y dís con guiones</entry>
<entry><literal>yy</literal> "-" <literal>MM</literal> "-" <literal>DD</literal></entry>
<entry>"08-06-30", "78-12-22"</entry>
</row>
<row>
<entry>Año de cuatro dígitos con signo opcional, mes y día</entry>
<entry>[+-]? <literal>YY</literal> "-" <literal>MM</literal> "-" <literal>DD</literal></entry>
<entry>"-0002-07-26", "+1978-04-17", "1814-05-17"</entry>
</row>
</tbody>
</tgroup>
</table>
<note>
<para>
Para los formatos <literal>y</literal> e <literal>yy</literal>,
los años por debajo de 100 son tratados de manera especial cuando
se emplean los símbolos <literal>y</literal> o <literal>yy</literal>.
Si el año cae en el rango de 0 (inclusive) a 69 (inclusive),
se añade 2000. Si el año cae en el rango de 70 (inclusive) a
99 (inclusive) se añade 1900. Esto significa que "00-01-01" se
interpreta como "2000-01-01".
</para>
</note>
<note>
<para>
El formato "Día, mes y año de dos dígitos, con puntos o tabulaciones"
(<literal>dd</literal> [.\t] <literal>mm</literal> "."
<literal>yy</literal>) solamente funciona con valores de años de 61 (inclusive)
a 99 (inclusive); fuera de esos años, el <emphasis>formato de
hora</emphasis> "<literal>HH</literal> [.:] <literal>MM</literal>
[.:] <literal>SS</literal>" tiene precedencia.
</para>
</note>
<note>
<para>
El formato "Año (y sólo el año)" únicamente funciona si se ha encotrado una
cadena de hora; de lo contrario, este formato es reconocido como
<literal>HH</literal> <literal>MM</literal>.
</para>
</note>
<note>
<para>
Es posible poner en exceso y en defecto los formatos <literal>dd</literal> y
<literal>DD</literal>. Día 0 significa el último día del mes
anterior, mientras que en exceso empieza a contar a partir del mes siguiente. Esto es,
"2008-08-00" equivale a "2008-07-31", y "2008-06-31" equivale
a "2008-07-01" (junio tiene sólo 30 días).
</para>
<para>
También es posible poner en defecto los formatos <literal>mm</literal> y
<literal>MM</literal> con el valor 0. Un valor de mes de
0 significa diciemebre del año anterior. Por ejemplo, "2008-00-22" es
equivalente a "2007-12-22".
</para>
<para>
Si se combinan los dos hechos anteriores y se ponen por defecto el día y
el mes, sucede lo siguiente: "2008-00-00" primero se convierte
a "2007-12-00" que después se convierte a "2007-11-30". Esto también
sucede con la cadena "0000-00-00", que se transforma en
"-0001-11-30" (el año -1 en el calendario ISO 8601, el cuál es 2 A.C.
en el calendario gregoriano "proléptico").
</para>
</note>
</sect1>
<!--}}}-->
<!--Compound Formats: {{{-->
<sect1 xml:id="datetime.formats.compound">
<title>Formatos compuestos</title>
<para>
Esta página describe los diferentes formatos compuestos de fecha/hora que entiede el analizador de
<function>strtotime</function>, <classname>DateTime</classname> y
<function>date_create</function>.
</para>
<table>
<title>Símbolos empleados</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formatos</entry>
<entry>Ejemplos</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>día del año</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>fracción</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", "7", "19"</entry>
</row>
<row>
<entry><literal>meridiano</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-5][0-9]</entry>
<entry>"00", "12"</entry>
</row>
<row>
<entry><literal>espacio</literal></entry>
<entry>[ \t]</entry>
<entry></entry>
</row>
<row>
<entry><literal>ss</literal></entry>
<entry>[0-5][0-9]</entry>
<entry>"04", "8", "59"</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>corrección de la zh</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>Notaciones regionales</title>
<tgroup cols="3">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>Formato de registro común</entry>
<entry><literal>dd</literal> "/" <literal>M</literal> "/" <literal>YY</literal> : <literal>HH</literal> ":" <literal>II</literal> ":" <literal>SS</literal> <literal>espacio</literal> <literal>corrección de la zh</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>Año ISO con semana ISO</entry>
<entry><literal>YY</literal> "-"? "W" <literal>W</literal></entry>
<entry>"2008W27", "2008-W28"</entry>
</row>
<row>
<entry>Año ISO con semana y día ISO</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: Año con día del año</entry>
<entry><literal>YY</literal> "."? <literal>día del año</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>fracción</literal> <literal>corrección de la zh</literal>?</entry>
<entry>"2008-07-01T22:35:17.02", "2008-07-01T22:35:17.03+08:00"</entry>
</row>
<row>
<entry>Marca temporal de Unix</entry>
<entry>"@" "-"? [0-9]+</entry>
<entry>"@1215282385"</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 (Compacto)</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>
La "W" en los formatos "Año ISO con semana ISO" y "Año ISO con semana
y día ISO" es sensible a mayúsculas-minúsculas; sólo se puede usar la "W"
mayúscula.
</para>
<para>
La "T" en los formatos SOAP, XMRPC y WDDX es sensible a mayúsculas-minúsculas;
sólo se puede usar la "T" mayúscula.
</para>
<para>
El formato "Marca temporal de Unix" establece la zona horaria a UTC.
</para>
</note>
</sect1>
<!--}}}-->
<!--Relative Formats: {{{-->
<sect1 xml:id="datetime.formats.relative">
<title>Formatos relativos</title>
<para>
Esta página describe los diferentes formatos relativos de fecha/hora que entiede el analizador de
<function>strtotime</function>, <classname>DateTime</classname> y
<function>date_create</function>.
</para>
<table>
<title>Símbolos empleados</title>
<tgroup cols="2">
<thead>
<row>
<entry>Descripción</entry>
<entry>Formato</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>nombre del día</literal></entry>
<entry>'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' |
'friday' | 'saturday' | 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' |
'sat'</entry>
</row>
<row>
<entry><literal>texto de día</literal></entry>
<entry>'weekday' | 'weekdays'</entry>
</row>
<row>
<entry><literal>número</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>texto relativo</literal></entry>
<entry>'next' | 'last' | 'previous' | 'this'</entry>
</row>
<row>
<entry><literal>espacio</literal></entry>
<entry>[ \t]+</entry>
</row>
<row>
<entry><literal>unidad</literal></entry>
<entry>(('sec' | 'second' | 'min' | 'minute' | 'hour' | 'day' |
'fortnight' | 'forthnight' | 'month' | 'year') 's'?) | 'weeks' |
<literal>texto de día</literal></entry>
</row>
</tbody>
</tgroup>
</table>
<table>
<title>Notaciones basadas en el día</title>
<tgroup cols="3">
<thead>
<row>
<entry>Formato</entry>
<entry>Descripción</entry>
<entry>Ejemplos</entry>
</row>
</thead>
<tbody>
<row>
<entry>'yesterday'</entry>
<entry>Medianoche de ayer</entry>
<entry>"yesterday 14:00"</entry>
</row>
<row>
<entry>'midnight'</entry>
<entry>La hora es establecida a 00:00:00</entry>
<entry></entry>
</row>
<row>
<entry>'today'</entry>
<entry>La hora es establecida a 00:00:00</entry>
<entry></entry>
</row>
<row>
<entry>'now'</entry>
<entry>Ahora - esto es simplemente ignorado</entry>
<entry></entry>
</row>
<row>
<entry>'noon'</entry>
<entry>La hora es establecida a 12:00:00</entry>
<entry>"yesterday noon"</entry>
</row>
<row>
<entry>'tomorrow'</entry>
<entry>Medianoche de mañana</entry>
<entry></entry>
</row>
<row>
<entry>'back of' <literal>hora</literal></entry>
<entry>15 minutos después de la hora especificada</entry>
<entry>"back of 7pm", "back of 15"</entry>
</row>
<row>
<entry>'front of' <literal>hora</literal></entry>
<entry>15 minutos antes de la hora especificada</entry>
<entry>"front of 5am", "front of 23"</entry>
</row>
<row>
<entry>'first day of'</entry>
<entry>Esteblece el día al primer día del mes en curso. Esta frase se
utiliza mejor seguida de un nombre de mes.</entry>
<entry>"first day of January 2008"</entry>
</row>
<row>
<entry>'last day of'</entry>
<entry>Esteblece el día al último día del mes en curso. Esta frase se
utiliza mejor seguida de un nombre de mes.</entry>
<entry>"last day of next month"</entry>
</row>
<row>
<entry><literal>ordinal</literal> <literal>espacio</literal> <literal>nombre del día</literal> <literal>espacio</literal> 'of'</entry>
<entry>Calcula el <literal>x</literal>-ésimo día de la semana del mes en curso.</entry>
<entry>"first sat of July 2008"</entry>
</row>
<row>
<entry>'last' <literal>espacio</literal> <literal>nombre del día</literal> <literal>espacio</literal> 'of'</entry>
<entry>Calcula el <emphasis>último</emphasis> día de la semana del mes en curso.</entry>
<entry>"last sat of July 2008"</entry>
</row>
<row>
<entry><literal>número</literal> <literal>espacio</literal>? (<literal>unidad</literal> | 'week')</entry>
<entry>Trata elementos de hora relativos donde el valor es un número.</entry>
<entry>"+5 weeks", "12 day", "-7 weekdays"</entry>
</row>
<row>
<entry><literal>ordinal</literal> <literal>espacio</literal> <literal>unidad</literal></entry>
<entry>Trata elementos de hora relativos donde el valor es texto.</entry>
<entry>"fifth day", "second month"</entry>
</row>
<row>
<entry>'ago'</entry>
<entry>Anula todos los valores de los elementos de hora relativos encontrados anteriormente.</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>nombre del día</literal></entry>
<entry>Avanza al siguiente día con este nombre.</entry>
<entry>"Monday"</entry>
</row>
<row>
<entry><literal>texto relativo</literal> <literal>espacio</literal> 'week'</entry>
<entry>Trata el formato especial "weekday + last/this/next week".</entry>
<entry>"Monday next week"</entry>
</row>
</tbody>
</tgroup>
</table>
<note>
<para>
Las declaraciones relativas son siempre procesadas <emphasis>después</emphasis>
de las declaraciones no relativas. Esto es, "+1 week july 2008" y "july
2008 +1 week" son equivalentes.
</para>
<para>
Las excepciones a esta regla son: "yesterday", "midnight", "today", "noon"
y "tomorrow". Téngase en cuenta que "tomorrow 11:00" y "11:00 tomorrow"
son diferentes. Considerando la fecha de hoy como "July 23rd, 2008", el
primero produce "2008-07-24 11:00", mientras que el segundo
produce "2008-07-24 00:00". La razón de esto es que esas
cinco declaraciones influyen directamente en el instante actual.
</para>
</note>
<note>
<para>
Analice las siguiente observaciones cuando el día de la semana actual es el
mismo que el día de la semana usado en la cadena de fecha/hora. Sin embargo,
el día de la semana actual prodría haber sido (re)calculado mediante partes no relativas de
la cadena de fecha/hora.
</para>
<orderedlist>
<listitem>
<simpara>
"<literal>nombre del día</literal>" <emphasis>no</emphasis> avanza a
otro día. (Ejemplo: "Wed July 23rd, 2008" significa "2008-07-23").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>número</literal> <literal>nombre del día</literal>"
<emphasis>no</emphasis> avanza a otro día. (Ejemplo: "1
wednesday july 23rd, 2008" significa "2008-07-23").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>número</literal> week <literal>nombre del día</literal>" añadirá
primero el número de semanas, pero <emphasis>no</emphasis>
avanzará a otro día. En este caso "<literal>número</literal>
week" y "<literal>nombre del día</literal>" son dos bloques distintos.
(Ejemplo: "+1 week wednesday july 23rd, 2008" significa "2008-07-30").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>ordinal</literal> <literal>nombre del día</literal>"
<emphasis></emphasis> avanza a otro día. (Ejemplo "first
wednesday july 23rd, 2008" significa "2008-07-30").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>número</literal> week <literal>ordinal</literal>
<literal>nombre del día</literal>" primero añadíra el número de
semanas, y después <emphasis>avanzará</emphasis> a otro
día. En este caso "<literal>número</literal> week" y
"<literal>ordinal</literal> <literal>nombre del día</literal>" son dos
bloques distintos. (Ejemplo: "+1 week first wednesday july 23rd,
2008" significa "2008-08-06").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>ordinal</literal> <literal>nombre del día</literal> 'of' "
<emphasis>no</emphasis> avanza a otro día. (Ejemplo:
"first wednesday of july 23rd, 2008" significa "2008-07-02" ya que
la frase específica con 'of' restablece el día del mes a '1', por lo que
el '23rd' aquí se ignora).
</simpara>
</listitem>
</orderedlist>
<para>
Observe también que el "of" en "<literal>ordinal</literal>
<literal>espacio</literal> <literal>nombre del día</literal>
<literal>espacio</literal> 'of' " y "'last' <literal>espacio</literal>
<literal>nombre del día</literal> <literal>espacio</literal> 'of' " hace
algo especial.
</para>
<orderedlist>
<listitem>
<simpara>
Establece el día del mes a 1.
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>ordinal</literal> <literal>nombre del día</literal> 'of' "
<emphasis>no</emphasis> avanza a otro día. (Ejemplo: "first
tuesday of july 2008" significa "2008-07-01").
</simpara>
</listitem>
<listitem>
<simpara>
"<literal>ordinal</literal> <literal>nombre del día</literal> "
<emphasis></emphasis> avanza otro día. (Ejemplo: "first
tuesday july 2008" significa "2008-07-08", véase también el punto 4 en la
lista de arriba).
</simpara>
</listitem>
<listitem>
<simpara>
"'last' <literal>nombre del día</literal> 'of' " toma el último
<literal>nombre del día</literal> del mes en curso. (Ejemplo: "last
wed of july 2008" significa "2008-07-30")
</simpara>
</listitem>
<listitem>
<simpara>
"'last' <literal>nombre del día</literal>" toma el último
<literal>nombre del día</literal> desde el día actual. (Ejemplo: "last
wed july 2008" significa "2008-06-25"; "july 2008" primero establece la
fecha actual a "2008-07-01" y después "last wed" retrocede al
miércoles anterior, que es "2008-06-25").
</simpara>
</listitem>
</orderedlist>
</note>
<note>
<para>
Los valores relativos al mes se calculan basándose en la longitud de los meses por
los que pasan. Un ejemplo sería "+2 month 2011-11-30", el cual
produciría "2012-01-30". Esto es debido a que noviembre tiene 30 días de longitud, y
diciembre tiene 31 días de longitud, produciendo un total de 61 días.
</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>5.3.3</entry>
<entry>
"first day" y "last day" se cambiaron para que se comporten como "+1 day" y "-1 day",
respectivamente. Anteriormente, el comportamiento era "first day of" y "last day of".
</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
-->