Data si Timpul in PHP 4

PHP are mai multe functii pentru lucru cu Data zilei si Timpul /Ora. Cele mai utilizate sunt acestea:

  • date() – transforma Timestamp (denumit si timpul Unix, numarul de secunde de la 1 Ianuarie 1970) intr-un format de data citet /textual.
  • time() – Returneaza timpul Unix /Timestamp curent (numarul de secunde de la 1 Ianuarie 1970 pana in prezent).
  • microtime() Returneaza timpul Unix /timestamp curent in microsecunde.
  • getdate() – Returneaza un array asociativ ce contine informatii despre data si timp.

– Aceste functii permit sa preiei data si timpul de la server in script-ul PHP; ele depind de setarile locale ale serverului.

PHP date()

Functia PHP date() e utilizata pt. formatarea Timestamp in data /timp.
  – Sintaxa:

date(„format”, timestamp)

– format   – Un sir format din caractere ce reprezinta data returnata. Ex.:   „D, d M Y H:i:s” rezulta => „Mon, 15 Aug 2012 15:42:01 +0000
– timestamp   – numarul de secunde de la 1-01-1970 pana la o anumita data. Este optional, daca nu e specificat se foloseste Timestamp-ul curent.
Aceasta functie returneaza un sir cu formatul datei, sau False in caz de eroare.

• O lista cu mai multe functii si exemple de lucru cu data si timpul la pagina: Functii pentru Data si Timp.

– Exemplu, preia data curenta, Zi-Luna-An:

$today = date(‘d-m-Y’);
echo $today;

In mod standard, functia date() foloseste timpul zonal al serverului. Ca sa setati un alt timp zonal, utilizati functia date_default_timezone_set(‘timezone_identifier’), adaugata inainte de alte functii pt data si timp.
Parametrul „timezone_identifier” e un sir cu identificatorul zonei de timp (ex.: ‘America/New_York‘ sau ‘Europe/Bucharest‘). Lista completa de timpuri zonale pt PHP e la pagina: Lista zone de timp pt PHP.
  – Exemplu:

<?php
date_default_timezone_set('Europe/Bucharest');         // seteaza timpul zonal pt Romania (Bucuresti)
// returneaza ziua curenta din saptamana
echo date('l');
// returneaza data zilei curente (zi-luna-an)
echo '<br />'. date('j-F-Y');
// returneaza Ora:minute:secunde a timpului curent
echo '<br />'. date('H:i:s');
?>

Rezultat:

Sunday
28-October-2012
07:55:18


In acest exemplu nu e specificat un timestamp, astfel, functia date() lucreaza cu timpul actual, zona Romania /Bucuresti.

Ca sa obtineti timpul Unix /Timestamp-ul curent (numarul de secunde), se utilizeaza functia time() (ex.:   $ts = time(); ).

Alte exemple cu functii pentru Data si Timp

Ca sa lucrati cu Timestamp-ul unei anumite date specifice, utilizati functia mktime().
  – Sintaxa:

mktime(ore, minute, secunde, luna, zi, an)

Returneaza timpul Unix corespunzator argumentului.

Se poate utiliza si functia strtotime(). Returneaza timpul Unix a sirului din parametru cu data textuala in limba engleza.
  – Sintaxa:

strtotime(„timpul”)

– Parametrul „timpul” e un sir /text cu data in limba engleza (ex.:   „now„, „+1 Day„, „15 October 2012„, „next Sunday„, etc.).
O lista cu formate valabile e la pagina Formate Data si Timp.

  Exemplu cu mktime() ai strtotime():

<?php
// preia Timestamp-ul datei October 15, 1976, 20:38:00 (cu mktime)
// returneaza Timestamp-ul si ziua din saptamana a acestei date
$stamp = mktime(20, 38, 0, 10, 15, 1976);
echo 'Timestamp: '. $stamp;
echo '<br /> October 15, 1976 este '. date('l', $stamp);
// Exemplu cu strtotime()
echo '<br /><br />Exemplu cu strtotime():<br />';
echo '<br /> 15 October 1976, 20:38:00 - '. strtotime('15 October 1976, 20:38:00');
// Alte exemple
echo '<br /> 07 July 1996 - '. strtotime('07 July 1996');
echo '<br /> +3 days - '. strtotime('+3 days');
echo '<br /> +1 one week - '. strtotime('+1 week');
echo '<br /> +1 week 2 days 3 hours 30 seconds - '. strtotime('+1 week 2 days 3 hours 30 seconds');
echo '<br /> next Sunday - '. strtotime('next Sunday');
?>

Acest cod va afisa:

Timestamp: 214252680
October 15, 1976 este Friday

Exemplu cu strtotime():

15 October 1976, 20:38:00 – 214252680
07 July 1996 – 836686800
+3 days – 1300950386
+1 one week – 1301292386
+1 week 2 days 3 hours 30 seconds – 1301476016
next Sunday – 1301176800

Ziua 0 dintr-o luna reprezinta ultima zi din luna precedenta.
De exemplu, ziua 0 din Martie 2012 este „29”, ultima zi din Februarie 2012:
                echo date(‘d’, mktime(0, 0, 0, 03, 0, 2012));             // 29


• O alta functie utila pt data si timp e getdate()
  – Sintaxa:

getdate(timestamp)

timestamp   – E optional, un numar intreg cu timpul Unix. Daca nu e specificat, foloseste timestamp-ul curent.
getdate() returneaza un array asociativ cu informatii despre data si timpul din „timestamp”, sau cel curent daca nu e specificat.
  – Exemplu:

<?php
$now = getdate();
echo '<pre>';
var_export($now);
echo '</pre>';
?>

Acest cod va afisa un array similar cu acesta:

array (
  'seconds' => 48,
  'minutes' => 30,
  'hours' => 9,
  'mday' => 21,
  'wday' => 1,
  'mon' => 3,
  'year' => 2011,
  'yday' => 79,
  'weekday' => 'Monday',
  'month' => 'March',
  0 => 1300692648,
)


– Exemplu cu microtime() (returneaza timpul Unix /timestamp curent in microsecunde). E util, de exemplu in a afla timpul de executie a unui cod PHP.
  – Cod:

<?php
$load_time = -microtime(true);
// instructiuni php
$load_time += microtime(true);
echo $load_time. ' seconds';
?>

Similar Posts

  • Functii pentru lucru cu functii

    Aici gasiti functii PHP ce pot fi folosite in lucrul cu functii create /definite in script. 1.   call_user_func(„func”, arg) – Apeleaza functia „func” dandu-i valoarea argumentului „arg”. Returneaza rezultatul functiei apelate, sau FALSE. <?phpfunction func($arg1, $arg2) {  return „$arg1 – $arg2”;} // Apeleaza func()echo call_user_func(„func”, ‘PHPCursWeb’, ‘net’);       // PHPCursWeb – net…

  • Functii PHP clase si obiecte

    Aici gasiti un set de functii PHP pentru lucrul cu clase si obiecte. 1.   class_alias(‘ClasaOriginala’, ‘Alias’) – Creaza in memorie o clasa cu numele dat la ‘Alias’, identica cu cea a carei nume e precizat la ‘ClasaOriginala’. <?php // Definire clasa AClas class AClas {   public $site = ‘www.PHPCursWeb.net’;       // Proprietate } //…

  • Functii PHP matematice

    Aici gasiti functii PHP matematice, in special pentru lucrul cu numere. 1.   abs(nr) – Returneaza valoarea absoluta (cu +) a lui „nr”. <?phpecho abs(-7.8);         // 7.8 (double /float)echo abs(3);         // 3 (integer)echo abs(-5);         // 5 (integer)?> 2.   base_convert(nr, baza1, baza2) –…

  • Functii pentru fisiere si directoare

    Aici gasiti cateva din cele mai utile functii PHP pentru lucru cu sistemul de fisiere si directoare. 1.   basename(adresa, „sufix”) – Returneaza partea cu numele fisierului dintr-o adresa URL. „sufix” e optional, daca e specificat, functia elimina si pe acesta de la sfarsitul numelui. <?php$url = ‘http://www.PHPCursWeb.net/php-mysql/index.php’;$file = basename($url);       // $file…

  • Functii pentru Array

    Aici gasiti cateva din cele mai utile functii PHP pentru Array (matrice). 1.   array_change_key_case(array, case) – Transforma cheile din primul parametru (array) in majuscule sau litere mici, dupa cum e specificat la „case” (CASE_UPPER sau CASE_LOWER). Default e CASE_LOWER. Daca „array” nu e o matrice, returneaza FALSE. <?php$aray = array(„FirSt”=>1, „SecOnd”=>8);print_r(array_change_key_case($aray, CASE_UPPER)); // Va…

  • PHP OOP – Clase si Obiecte, Metoda constructor 13

    OOP (Object Oriented Programming – Programare Orientata pe obiecte) este un concept (sau tehnica) de programare care trateaza datele si functiile ca obiecte. Important la acest concept este sa fie inteleasa bine diferenta dintre Clasa (Class) si Obiect (Object).Inainte de a trece la lucruri practice, iata cate ceva teoretic despre OOP. • Clasa este o…

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *