Diferencia entre revisiones de «Plantilla:PHP/MasSintaxis»
(→date()) |
|||
(14 revisiones intermedias por el mismo usuario no mostrado) | |||
Línea 1: | Línea 1: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<div class=slide> | <div class=slide> | ||
Línea 580: | Línea 157: | ||
</source> | </source> | ||
</div> | </div> | ||
− | + | <br /> | |
<div class="slide"> | <div class="slide"> | ||
;[http://php.net/manual/es/function.unset.php unset] | ;[http://php.net/manual/es/function.unset.php unset] | ||
Línea 586: | Línea 163: | ||
void unset ($var) | void unset ($var) | ||
</div> | </div> | ||
+ | |||
===Funciones de fechas=== | ===Funciones de fechas=== | ||
*En php hay muchas fucniones para gestionar fechas, siendo esta una tarea frecuente el las aplicaciones web. | *En php hay muchas fucniones para gestionar fechas, siendo esta una tarea frecuente el las aplicaciones web. | ||
Línea 607: | Línea 185: | ||
*Me retorna el número de segundos transcurridos desde el 1 de Enero de 1970 00:00:00 GMT. | *Me retorna el número de segundos transcurridos desde el 1 de Enero de 1970 00:00:00 GMT. | ||
Esta fecha está relacionada con el sistema operativo UNIX que empezó a hacerse visible a partir del año 1970 | Esta fecha está relacionada con el sistema operativo UNIX que empezó a hacerse visible a partir del año 1970 | ||
− | {{MRM_Web|Title = Un | + | {{MRM_Web|Title = Un poco de historia desde wikipedia| |
https://es.wikipedia.org/wiki/Berkeley_Software_Distribution | https://es.wikipedia.org/wiki/Berkeley_Software_Distribution | ||
https://es.wikipedia.org/wiki/Unix | https://es.wikipedia.org/wiki/Unix | ||
Línea 633: | Línea 211: | ||
}} | }} | ||
<br /> | <br /> | ||
+ | |||
====date()==== | ====date()==== | ||
Línea 645: | Línea 224: | ||
Es una fecha en formato timestamp o entero largo como segundos desde una fecha | Es una fecha en formato timestamp o entero largo como segundos desde una fecha | ||
Si no se establece, se toma el instante actual, es decir el resultado de la función time() | Si no se establece, se toma el instante actual, es decir el resultado de la función time() | ||
− | {{ | + | }} |
+ | {{MRM_Actividad|Title=Ejemplo de uso de date| | ||
<source lang=php> | <source lang=php> | ||
<?php | <?php | ||
Línea 660: | Línea 240: | ||
<br /> | <br /> | ||
− | + | ====strtotime()==== | |
Convierte un string a fecha. https://www.php.net/manual/es/function.strtotime.php | Convierte un string a fecha. https://www.php.net/manual/es/function.strtotime.php | ||
*Esta función admite dos parámetros, uno de ellos es obligatoria | *Esta función admite dos parámetros, uno de ellos es obligatoria | ||
Línea 667: | Línea 247: | ||
;parámetro 1: fecha_como_string | ;parámetro 1: fecha_como_string | ||
Es una cadena que representa una fecha | Es una cadena que representa una fecha | ||
− | Debemos facilitarla con el formato que entienda el sistema | + | Debemos facilitarla con el formato que entienda el sistema |
Por defecto "mes/dia/year" | Por defecto "mes/dia/year" | ||
;parametro 2: timestamp | ;parametro 2: timestamp | ||
Línea 673: | Línea 253: | ||
{{Tip|Recuerda que stamptime es un entero largo que respresenta un número de segundos desde el 1 de enero de 1970}} | {{Tip|Recuerda que stamptime es un entero largo que respresenta un número de segundos desde el 1 de enero de 1970}} | ||
}} | }} | ||
− | + | ||
− | {{ | + | |
+ | ;Si quisiéramos cambiar el formato, podemos usar la función data_default_timezone_set("Zona_horaria") | ||
+ | *Por ejemplo | ||
+ | <source lang=php> | ||
+ | <?php | ||
+ | $dia= 27; | ||
+ | $mes = 12; | ||
+ | $year = 2001; | ||
+ | |||
+ | $fecha_string="$dia-$mes-$year"; | ||
+ | date_default_timezone_set('Europe/Madrid'); | ||
+ | $tiempo = strtotime($fecha_string); | ||
+ | echo "<h1>Marca de tiempo de $fecha_string <span style='color:red'>$tiempo</h1>"; | ||
+ | </source> | ||
+ | ;El código anterior imprimirá<br /> | ||
+ | [[archivo:strtotime1.png]] | ||
+ | <br /> | ||
+ | |||
+ | {{MRM_Actividad|Title=Ejemplo de uso de strtotime| | ||
<source lang=php> | <source lang=php> | ||
<?php | <?php | ||
Línea 686: | Línea 284: | ||
<br/> | <br/> | ||
</source> | </source> | ||
− | |||
− | |||
− | |||
}} | }} | ||
<br /> | <br /> | ||
Línea 694: | Línea 289: | ||
====strftime()==== | ====strftime()==== | ||
https://www.php.net/manual/es/function.strftime.php | https://www.php.net/manual/es/function.strftime.php | ||
− | + | *Da formato a una fecha según el idioma establecido | |
+ | *Para poder ver el uso de esta función , debemos establecer uno de los idiomas que tengamos instalados en el sistema. | ||
+ | *Para realizar esta acción debemos usar la función '''''setlocale''''' | ||
;setlocale() | ;setlocale() | ||
https://www.php.net/manual/es/function.setlocale.php | https://www.php.net/manual/es/function.setlocale.php | ||
− | + | Esta función establece un idioma para la fecha, monedas,... | |
− | + | ||
Para poder usar esta función debemos tener instalado en el sistema ese conjunto de caracteres de formato para la localidad deseada | Para poder usar esta función debemos tener instalado en el sistema ese conjunto de caracteres de formato para la localidad deseada | ||
− | Para ver las localidades instaladas puedes usar el comando | + | ;Para ver las localidades instaladas puedes usar el comando |
<source lang=bash> | <source lang=bash> | ||
− | + | locale -a | |
</source> | </source> | ||
− | Para instalar nuevas localidades | + | ;Para instalar nuevas localidades |
<source lang=bash> | <source lang=bash> | ||
sudo dpkg-reconfigure locales | sudo dpkg-reconfigure locales | ||
Línea 712: | Línea 308: | ||
#fr_FR.UTF-8 Francés | #fr_FR.UTF-8 Francés | ||
#en_US.UTF-8 Inglés | #en_US.UTF-8 Inglés | ||
+ | ;Para instalar una localidad concreta | ||
+ | <source lang=bash> | ||
+ | sudo locale-gen "en_US.utf8" | ||
+ | </source> | ||
+ | Esta función retorna false o bien la localidad esablecida, si todo ha ido bien | ||
− | |||
====checkdate(mes, dia, year)==== | ====checkdate(mes, dia, year)==== | ||
*Esta función recibe tres enteros que representan una fecha y retorna un booleano que idica si la fecha es o no correcta | *Esta función recibe tres enteros que representan una fecha y retorna un booleano que idica si la fecha es o no correcta |
Última revisión de 07:29 28 oct 2024
Funciones de fechas
- En php hay muchas fucniones para gestionar fechas, siendo esta una tarea frecuente el las aplicaciones web.
- Vamos a estudiar 5 funciones siendo dos de ellas muy utilizadas
time() https://www.php.net/manual/es/function.time.php date(formato, [timestamp]) https://www.php.net/manual/es/function.date.php strtotime("fecha_string"[timestamp]) https://www.php.net/manual/es/function.strtotime.php strftime(formato, [timestamp]) https://www.php.net/manual/es/function.strftime.php checkdate(mes, dia, año) https://www.php.net/manual/es/function.checkdate.php
|
- En php se trabaja mucho con las fechas. Para tal cometido existe una clase llamada DateTime y DateTimeInterface (https://www.php.net/manual/es/class.datetime.php), pero muchas de sus acciones se pueden hacer de forma imperativa con funciones que vamos a ver.
time()
Obtiene una marca de tiempo https://www.php.net/manual/es/function.time.php
- Esta es una función muy importante en php que conviene entender bien.
- Me retorna el número de segundos transcurridos desde el 1 de Enero de 1970 00:00:00 GMT.
Esta fecha está relacionada con el sistema operativo UNIX que empezó a hacerse visible a partir del año 1970
https://es.wikipedia.org/wiki/Berkeley_Software_Distribution https://es.wikipedia.org/wiki/Unix |
- La función time retorna un entero largo numérico
|
date()
- La función convierte un timestamp en una fecha como cadena de caracteres con el formato que le especifiquemos
- Para ver los metaracteres que representan el formato puedes ver la referencia web de la función
Esta función admite dos parámetros, uno de ellos es obligatoria
data("formato_fecha", "timestamp")
Es un string formado por metacaracteres y caracteres literales que establece el formato en el cual queremos ver la fecha (d/m/y H:i:s), por ejemplo, donde d representa el número de día, m del mes ... y los caracteres / y : apareceran literales en la cadena
Es una fecha en formato timestamp o entero largo como segundos desde una fecha Si no se establece, se toma el instante actual, es decir el resultado de la función time()
|
strtotime()
Convierte un string a fecha. https://www.php.net/manual/es/function.strtotime.php
- Esta función admite dos parámetros, uno de ellos es obligatoria
strtotime("fecha_como_string", "timestamp")
Es una cadena que representa una fecha Debemos facilitarla con el formato que entienda el sistema Por defecto "mes/dia/year"
Es una fecha en formato timestamp o entero largo como segundos desde una fecha Tip: Recuerda que stamptime es un entero largo que respresenta un número de segundos desde el 1 de enero de 1970
|
- Si quisiéramos cambiar el formato, podemos usar la función data_default_timezone_set("Zona_horaria")
- Por ejemplo
<?php $dia= 27; $mes = 12; $year = 2001; $fecha_string="$dia-$mes-$year"; date_default_timezone_set('Europe/Madrid'); $tiempo = strtotime($fecha_string); echo "<h1>Marca de tiempo de $fecha_string <span style='color:red'>$tiempo</h1>";
- El código anterior imprimirá
strftime()
https://www.php.net/manual/es/function.strftime.php
- Da formato a una fecha según el idioma establecido
- Para poder ver el uso de esta función , debemos establecer uno de los idiomas que tengamos instalados en el sistema.
- Para realizar esta acción debemos usar la función setlocale
- setlocale()
https://www.php.net/manual/es/function.setlocale.php
Esta función establece un idioma para la fecha, monedas,... Para poder usar esta función debemos tener instalado en el sistema ese conjunto de caracteres de formato para la localidad deseada
- Para ver las localidades instaladas puedes usar el comando
locale -a
- Para instalar nuevas localidades
sudo dpkg-reconfigure locales
- Saldrá un menú y seleccionaremos las localidades. Para los ejercicios debes tener instaladso
- es_ES.UTF-8 Español
- fr_FR.UTF-8 Francés
- en_US.UTF-8 Inglés
- Para instalar una localidad concreta
sudo locale-gen "en_US.utf8"
Esta función retorna false o bien la localidad esablecida, si todo ha ido bien
checkdate(mes, dia, year)
- Esta función recibe tres enteros que representan una fecha y retorna un booleano que idica si la fecha es o no correcta