Tractament de dates en PHP - PowerPoint PPT Presentation

About This Presentation
Title:

Tractament de dates en PHP

Description:

Tractament de dates en PHP Microtreball de PI. Miquel Espl i Gomis. ndex Alguns conceptes previs. Funcions generadores b siques. Funcions generadores-formatadores. – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 37
Provided by: Miq9
Category:
Tags: php | anys | dates | tractament

less

Transcript and Presenter's Notes

Title: Tractament de dates en PHP


1
Tractament de dates en PHP
  • Microtreball de PI.
  • Miquel Esplà i Gomis.

2
Índex
  • Alguns conceptes previs.
  • Funcions generadores bàsiques.
  • Funcions generadores-formatadores.
  • Altres funcions.
  • Més informació i bibliografia.

3
Conceptes previs
  • Temps UTC (Universal Time Coordination) Temps
    estàndard arbitrari que no depèn duna posició al
    planeta.
  • Temps GMT (Greenwich Meridian Time) Temps
    relatiu del meridià 0 (de Greenwich).
  • Timestamp de Unix Segons passats des de linici
    de lera Unix 000000 de l1 de gener de 1970.

4
Índex
  • Alguns conceptes previs.
  • Funcions generadores bàsiques.
  • Funcions generadores-formatadores.
  • Altres funcions.
  • Més informació i bibliografia.

5
Funció time
  • int time (void)
  • Retorna la data en el timestamp de Unix.

6
La funció gettimeofday
  • array float gettimeofday ( bool
    retorna_com_float )
  • Aquesta funció retorna una sèrie de dades sobre
    lhora en forma darray
  • "sec" - segons des de linici de lera Unix.
  • "usec" microsegons.
  • "minuteswest" - minuts a loest de Greenwich.
  • "dsttime" - tipus de correcció destalvi de llum
    diurna .
  • En cas què retorna_com_float valga 1, el valor es
    retornarà en format float.

7
Exemple de gettimeofday
  • lt?phpprint_r(gettimeofday())echo
    gettimeofday(true)?gt
  • Resultat
  • Array (
  • sec gt 1073504408
  • usec gt 238215
  • minuteswest gt 0
  • dsttime gt 1
  • )
  • 1073504408.23910

8
La funció microtime
  • string float microtime ( bool
    rebrer_com_float )
  • Si rebrer_com_float somet o té valor 0, la
    funció retorna la cadena sec msec, que conté la
    part en segons (sec) i en microsegons (msec).
  • Si rebrer_com_float té valor 1, la funció retorna
    un float amb el valor de lhora actual en
    microsegons.
  • Nota Aquesta funció només està disponible en els
    sistemes operatius que suporten la cridada a la
    funció gettimeofday.

9
Índex
  • Alguns conceptes previs.
  • Funcions generadores bàsiques.
  • Funcions generadores-formatadores.
  • Altres funcions
  • Més informació i bibliografia.

10
La funció getdate
  • array getdate ( int timestamp )
  • Retorna un array associatiu amb un conjunt
    delements que descriuen la data i hora definides
    pel timestamp, o les actuals si somet
    largument.
  • Cada element té un identificador per a poder
    accedir a cada dada de larray.

11
La funció getdate
  • Identificadors de larray
  • "seconds segons
  • "minutes minuts
  • "hours hores
  • "mday dia del mes"wday dia de la setmana
    (numèric 0 Diumenge fins a
  • 6 Dissabte)
  • "mon mes (numèric)
  • "year any
  • "yday dia de lany (des de 0)
  • "weekday dia de la setmana (en anglés)
  • "month mes (en anglés)

12
La funció localtime
  • array vector localtime ( int timestamp ,
    bool es_associatiu )
  • Aquesta funció retorna un conjunt de dades que
    descriuen lhora i data locals.
  • localtime es diferencia de getdate en que depén
    del sistema operatiu, ja que obté la data cridant
    a la funció de c que té el mateix nom.

13
La funció localtime
  • Camps de larray retornat per la funció
    localtime
  • "tm_sec" - segons.
  • "tm_min" - minuts.
  • "tm_hour" - hores.
  • "tm_mday" - dia del més.
  • "tm_mon" - més de lany, començant en 0 que és
    gener.
  • "tm_year" - Anys passats des de 1900.
  • "tm_wday" - Dia de la setmana.
  • "tm_yday" - Dia de lany.
  • "tm_isdst" - Si el canvi dhora per a lestalvi
    energètic té efecte o no.

14
La funció date / gmdate
  • string date gmdate ( string format , int
    timestamp )
  • Extreu una o més dades sobre una data timestamp i
    les retorna en forma de string.
  • Si no sespecifica un valor timestamp, la funció
    pren per defecte la data i lhora actuals.
  • Els caràcters de format no identificats per la
    funció sextreuen tal i com estan escrits.

15
La funció date
  • Opcions
  • a am o pm
  • A AM o PM
  • d Dia del més amb zeros
  • D Abreviatura del dia de la setmana (anglés)
  • F Nom del mes (anglés)
  • h Hora en format 1-12j Día del mes sin ceros
  • l Dia de la semana

16
La funció date(opció,timestamp)
  • m Número de mes (1-12)
  • M Abreviatura del mes (inglés)
  • s Segundos
  • y Año con 2 dígitos
  • Y Año con 4 dígitos
  • z Dia del año (1-365)
  • H Hora en formato 0-23iMinutos
  • Podreu trobar més opcions de format a la pàgina
  • http//es.php.net/manual/es/function.date.php

17
Exemple de la funció date
  • lt?phpproxima_setmana time() (7 24 60
    60) // 7 dias 24 horas 60 mins 60segsecho
    'Ara          '. date('Y-m-d') ."\n"echo
    'Propera Setmana '. date('Y-m-d',
    proxima_semana) ."\n"?gt
  • Eixida
  • Ara 2005-03-30
  • Propera Setmana 2005-04-07

18
La funció mktime / gmmktime
  • int mktime gmmktime ( int hora , int minuts
    , int segons , int mes , int dia , int any ,
    int es_dst )
  • Es tracta de la funció inversa a getdate.
  • Retorna la data en timestamp a partir dels
    paràmetres que se li han passat.
  • Es poden ometrer paràmetres (de dreta a
    esquerra). Aquests seran substituits per les
    dades de la data i hora locals.

19
La funció strftime / gmstrftime
  • string strftime gmstrftime ( string formato
    , int marca_de_tiempo )
  • Extreu una o més dades sobre una data timestamp i
    les retorna en forma dstring en lidioma local
    (noms de mesos, dies, etc).
  • Si no sespecifica un valor timestamp, la funció
    pren per defecte la data i lhora actuals.
  • Els caràcters de format no identificats per la
    funció sextreuen tal i com estan escrits.

20
La funció strftime / gmstrftime
  • Opcions de format de data
  • a - nom abreviat del dia de la setmana dacord a
    la localitat actual.
  • A - nom complet del dia de la setmana dacord a
    la localitat actual.
  • b - nom abreviat del mes dacord a la localitat
    actual.
  • B - nom complet del mes dacord a la localitat
    actual.
  • c - representació de data i hora preferida per a
    la localitat actual

21
La funció strftime / gmstrftime
  • d - dia del mes com a un nombre decimal (rang 01
    a 31)
  • D - igual que m/d/y
  • G Lany de 4-dígitos.
  • H - hora com un nombre decimal emprant un
    rellotge de 24 horas (rango 00 a 23)
  • I - hora com a nombre decimal emprant un
    rellotge de 12 horas (rango 01 a 12)
  • j - dia de lany com a un nombre decimal (rang
    001 a 366)
  • m - mes como a nombre decimal (rang 01 a 12)
  • Podeu trobar més opcions de format a
    http//es.php.net/manual/es/function.strftime.php

22
La funció strptime
  • array strptime ( string timestamp, string format
    )
  • Transforma el timestamp creat per la funció
    strftime en un array.
  • El camp format fa referència al format amb que
    sha creat el timestamp mitjançant strftime.
  • Larray resultant conté els camps
  • tm_sec Segons transcorreguts del minut actual
    (0-61)
  • tm_min Minuts transcorreguts de lhora actual
    (0-59)

23
La funció strptime
  • tm_hour Hores transcorregudes des de la mitjanit
    (0-23)
  • tm_mday Dia del mes (1-31)
  • tm_mon Mesos transcorreguts des de gener (0-11)
  • tm_year Anys transcorreguts des de 1900
  • tm_wday Dies transcorreguts des del diumenge
    (0-6)
  • tm_yday Dies transcorreguts des de l1 de gener
    (0-365)
  • unparsed La part de la timestamp que no es va
    poder reconèixer emprant el paràmetre format

24
La funció idate
  • int idate ( string formato , int timestamp )
  • Retorna un enter que representa una dada referent
    a una data.
  • La data que es retornarà es selecciona amb el
    paràmetre formato.
  • Si no sintrodueix cap timestamp, es pren, per
    defecte, lactual.

25
La funció idate
  • Opcions de format
  • B Hora dInternet (també conegut com "beat" de
    la marca de rellotges Swatch)
  • d Dia del mes
  • h Hora (en format de 12 hores)
  • H Hora (en format de 24 hores)
  • i Minuts
  • I Retorna 1 si està activat DST i 0 en altre cas
  • L Retorna 1 si és un any bixest i 0 en altre cas
  • m Número del mes
  • s Segons

26
La funció idate
  • t Número de díes del mes actual
  • U Segons des de lera Unix. Es tracta del mateix
    resultat que lobtingut amb la funció time
  • w Dia de la setmana (considerant el número 0 per
    al diumenge)
  • W Número de la setmana començant des del
    dilluns.
  • y Any (1 o 2 dígits)
  • Y Any (4 dígitos)
  • z Dia de lany
  • Z Diferència horària en segons

27
La funció strtotime
  • int strtotime ( string hora , int timestamp )
  • Funció que pren una cadena escrita en anglés, la
    qual expressa una data en llenguatge natural, i
    la converteix a un timestamp enter relatiu al
    paràmetre ahora.
  • Si no ho aconsegueix, la funció retorna -1.
  • Les regles de sintaxi per al paràmetre hora es
    poden troba a lenllaç
  • http//www.gnu.org/software/tar/manual/html_chapt
    er/tar_7.html

28
Exemple de strtotime
  • echo date('Y-m-d', strtotime ("now")), "\n"echo
    date('Y-m-d', strtotime (1 day, 0)), "\n"
  • Leixida seria
  • 2005-11-23
  • 1970-01-02

29
Índex
  • Alguns conceptes previs.
  • Funcions generadores bàsiques.
  • Funcions generadores-formatadores.
  • Altres funcions.
  • Més informació i bibliografia.

30
La funció checkdate
  • bool checkdate ( int mes, int dia, int any )
  • Comprova si la data que se li passa per
    paràmetres és correcta retornant TRUE o FALSE.
  • Es consideren dates correctes
  • Les que tenen un any entre 1900 i 32767
  • Les que tenen un més entre 1 i 12
  • Les que tenen un dia adequat al més.

31
La funció date_default_timezone_get
  • string date_default_timezone_get (void)
  • Retorna la zona horària amb un identificador.
  • Si les variables dentorn que contenen aquesta
    informació són buides, la funció retorna
    lidentificador UTC.

32
La funció date_default_timezone_set
  • bool date_default_timezone_set ( string
    identificador_de_zona_horària )
  • Estableix la zona horària en el sistema, la qual
    serà utilitzada per la resta de funcions
    explicades.
  • Exemple
  • date_default_timezone_set(UTC)date_default_ti
    mezone_set(Europe/Lisbon)

33
La funció sun_rise / sun_set
  • string double integer date_sunrise
    date_sunrise ( int timestamp , int format ,
    float latitud , float longitud , float cènit ,
    float diferència_gmt )
  • Aquestes funcions retornen lhora a què ix o es
    pon, respecivament, el Sol en un determinat dia,
    passat per paràmetre.
  • Es poden passar paràmetres per a indicar la
    posició global o langle de la terra, com la
    longitud, la latitud o el cènit.

34
La funció sun_rise / sun_set
  • El paràmetre optatiu més interessant és el de
    format. Hi ha tres possibilitats de formats
    deixida
  • SUNFUNCS_RET_STRING Retorna una cadena que
    representa una data.
  • SUNFUNCS_RET_DOUBLE Retorna una xifra en doble
    precissió.
  • SUNFUNCS_RET_TIMESTAMP Retorna un timestamp
    enter.

35
Índex
  • Alguns conceptes previs.
  • Funcions generadores bàsiques.
  • Funcions generadores-formatadores.
  • Altres funcions.
  • Més informació i bibliografia.

36
Bibliografia i informació
  • http//php.net
  • http//es.php.net/manual/es/ref.datetime.php
Write a Comment
User Comments (0)
About PowerShow.com