Curs Php-mysql

Aici sunt cateva din cele mai utile functii PHP pentru lucrul cu Data si formate de Timp.


Caractere folosite pentru formatul datei


1.   checkdate(nr_luna, nr_zi, nr_an)

- Verifică validitatea datei formate din argumenții din paranteza. O dată este considerată validă dacă fiecare parametru este definit corespunzător. "nr_luna" este numarul lunii, intre 1 și 12 inclusiv, "nr_zi" este numarul zilei cuprinse în domeniul zilelor permise pentru luna respectivă. Anii bisecți sunt luați în considerare, "nr_an" este anul intre 1 și 32767 inclusiv. Returneaza TRUE sau FALSE.

<?php
var_dump(checkdate(7, 7, 1996));         // bool(true)
var_dump(checkdate(2, 29, 2001));         // bool(false)
?>

2.   date_create('sir_data')

- Stil obiect-orientat: DateTime::__construct('sir_data')
Creaza o instanta de timp dupa data din "sir_data", ce poate fi folosit in alte functii pt. data si timp care necesita ca parametru o instanta de timp. In caz de esec returneaza FALSE.

<?php
// Stil obiect-orientat
$date = new DateTime('2008-01-01');
echo $date->format('d-m-Y');         // 01-01-2008

// Stil procedural
$date = date_create('2008-01-01');
echo date_format($date, 'd-m-Y');         // 01-01-2008
?>

3.   date_format(obj_date, 'data_form')

- Stil obiect-orientat: DateTime::format('data_form')
Returneaza data comform formatului din "data_form". "obj_date" e o instanta de timp returnata de functia "date_create()". In caz de esec returneaza FALSE.

<?php
// Stil obiect-orientat
$date = new DateTime('2008-01-01');
echo $date->format('Y-m-d H:i:s');         // 2008-01-01 00:00:00

// Stil procedural
$date = date_create('2000-01-01');
echo date_format($date, 'Y-m-d H:i:s');         // 2008-01-01 00:00:00
?>

4.   date_create_from_format('data_form', 'sir_data')

- Stil obiect-orientat: DateTime::createFromFormat(data_form, sir_data)
Creaza o instanta de timp a datei din "sir_data" care e recunoscuta si trebuie sa corespunda cu formatul de data din "data_form". Instanta obtinuta poate fi folosita pentru a afisa data din "sir_data" cu un alt format, cu functia "date_format()". In caz de esec returneaza FALSE.

<?php
// Stil obiect-orientat
$date = DateTime::createFromFormat('j-M-Y', '18-Feb-2009');
echo $date->format('Y-m-d');         // 2009-02-18

// Stil procedural
$date = date_create_from_format('j-M-Y', '18-Feb-2009');
echo date_format($date, 'Y-m-d');         // 2009-02-18
?>

5.   date_date_set(obj_date_create, nr_an, nr_luna, nr_zi)

- Stil obiect-orientat: DateTime::setDate(nr_an, nr_luna, nr_zi)
Seteaza o instanta de timp, dupa parametri primiti, care apoi poate fi afisata intr-un format de data, cu functia "date_format()". In caz de esec returneaza FALSE.

<?php
// Stil obiect-orientat
$date = new DateTime();
$date->setDate(2001, 2, 3);
echo $date->format('Y-m-d');         // 2001-02-03

// Stil procedural
$date = date_create();
date_date_set($date, 2001, 2, 3);
echo date_format($date, 'Y-m-d');         // 2001-02-03
?>

6.   date_default_timezone_set('zona_timp')

- Seteaza timpul folosit in script dupa zona specificata in "zona_timp", identificator din Lista zonelor orare susținute. Returneaza TRUE sau FALSE.

<?php
$timp = 1234567890;
echo date('d-m-Y, H:i', $timp);         // 13-02-2009, 23:31

// Acum seteaza pt. zona Romaniei
date_default_timezone_set('Europe/Bucharest');
echo date('d-m-Y, H:i', $timp);         // 14-02-2009, 01:31
?>

7.   date_diff(obj_date1, obj_date2)

- Stil obiect-orientat: DateTime::diff(obj_date2)
Returneaza un obiect cu diferenta dintre doua instante de timp sau FALSE.

<?php
// Stil obiect-orientat
$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime('2009-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%d zile');         // +2 zile

// Stil procedural
$datetime1 = date_create('2009-10-11');
$datetime2 = date_create('2009-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%d zile');         // +2 zile
?>

8.   date_modify(obj_date, 'sir_modificare'

- Stil obiect-orientat: DateTime::modify(sir_modificare)
Modifica instanta de timp din "obj_date" cu valoarea specificata in "sir_modificare", sau FALSE in caz de esec.

<?php
// Stil obiect-orientat
$date = new DateTime('2008-12-12');
$date->modify('+1 day');
echo $date->format('Y-m-d');         // 2008-12-13

// Stil procedural
$date = date_create('2008-12-12');
date_modify($date, '+1 day');
echo date_format($date, 'Y-m-d');         // 2008-12-13
?> ?>

9.   date_parse_from_format('data_form', 'sir_data')

- Returneaza un Array asociativ cu informatii detaliate despre data din "sir_data", aceasta trebuind sa aibe formatul din "data_form".

<?php
$date = '7.07.1996 15:00';
echo '<pre>';
print_r(date_parse_from_format('j.m.Y H:i', $date));
echo '</pre>';

/* Va afisa
Array
(
[year] => 1996
[month] => 7
[day] => 7
[hour] => 15
[minute] => 0
[second] => 0
[fraction] => 
[warning_count] => 0
[warnings] => Array
(
)

[error_count] => 0
[errors] => Array
(
)

[is_localtime] => 
)
*/
?>

10.   date_parse('sir_data')

- Returneaza un Array asociativ cu informatii detaliate despre data din "sir_data" (care sa fie intr-un format acceptat de "strtotime()").

<?php
$date = '7.07.1996 15:00';
echo '<pre>';
print_r(date_parse($date));
echo '</pre>';

/* Va afisa:
Array
(
[year] => 1996
[month] => 7
[day] => 7
[hour] => 15
[minute] => 0
[second] => 0
[fraction] => 0
[warning_count] => 0
[warnings] => Array
(
)

[error_count] => 0
[errors] => Array
(
)

[is_localtime] => 
)
*/
?>

11.   date_sun_info(timp_UNIX, Latitudine, Longitudine)

- Returneaza un Array asociativ cu informatii despre rasaritul si apusul soarelui, sfarsitul si inceputul crepusculului din ziua ce se gaseste in timpul UNIX din parametrul "timp_UNIX", din zona data de parametri "Latitudine" si "Longitudine", in grade.

<?php
$sun_info = date_sun_info(strtotime('1996-07-07'), 45.28, 27.97);
foreach ($sun_info as $key => $val) {
    echo "$key: " . date("H:i:s", $val). '<br />';
}

/* Va afisa:
sunrise: 02:28:35
sunset: 17:57:39
transit: 10:13:07
civil_twilight_begin: 01:51:44
civil_twilight_end: 18:34:31
nautical_twilight_begin: 01:03:02
nautical_twilight_end: 19:23:13
astronomical_twilight_begin: 00:00:05
astronomical_twilight_end: 20:26:09
*/
?>

12.   date_time_set(obj_date, nr_ora, nr_minut, nr_secunde)

- Stil obiect-orientat: DateTime::setTime(nr_ora, nr_minut, nr_secunde)
Reseteaza instanta de timp (din "obj_date"), definindu-i si ora, minutul, si optional secndele, specificate in ceilalti parametri. In caz de esec, FALSE..

<?php
// Stil obiect-orientat
$date = new DateTime('2008-01-01');
$date->setTime(14, 45);
echo $date->format('Y-m-d H:i:s');         // 2008-01-01 14:45:00

// Stil procedural
$date = date_create('2008-01-01');
date_time_set($date, 14, 45);
echo date_format($date, 'Y-m-d H:i:s');         // 2008-01-01 14:45:00
?>

13.   date_timestamp_get(obj_date)

- Stil obiect-orientat: DateTime::getTimestamp()
Obtine timpul UNIX din instanta de timp "obj_date".

<?php
// Stil obiect-orientat
$date = new DateTime();
echo $date->getTimestamp();         // 1280582771

// Stil procedural
$date = date_create();
echo date_timestamp_get($date);         // 1280582771
?>

14.   date_timestamp_set(obj_date, timp_UNIX)

- Stil obiect-orientat: DateTime::setTimestamp(timp_UNIX)
Modifica instanta de timp "obj_date" cu timpul UNIX din "timp_UNIX".

<?php
// Stil obiect-orientat
$date = new DateTime();
echo $date->format('U = Y-m-d H:i:s');         // 1272508903 = 2010-04-28 22:41:43

$date->setTimestamp(1171502725);
echo $date->format('U = Y-m-d H:i:s');         // 1171502725 = 2007-02-14 20:25:25

// Stil procedural
$date = date_create();
echo date_format($date, 'U = Y-m-d H:i:s');         // 1272508903 = 2010-04-28 22:41:43
date_timestamp_set($date, 1171502725);
echo date_format($date, 'U = Y-m-d H:i:s');         // 1171502725 = 2007-02-14 20:25:25
?>

15.   date('data_form', timp_UNIX)

- Returneaza un sir cu data, avand formatul din "data_form", al timpului UNIX din parametru "timp_UNIX". Daca "timp_UNIX" nu e mentionat, va returna data curenta.

<?php
echo date('d');         // 31
echo date('d', 123457890);         // 29
echo date('F j, Y, g:i a');         // July 31, 2010, 1:44 pm
echo date('F j, Y, g:i a', 123457890);         // November 29, 1973, 9:51 pm
?>

16.   getdate(timp_UNIX)

- Returneaza un Array asociativ conținând informația despre dată și oră a parametrului "timp_UNIX", sau a datei/orei curente dacă parametrul "timp_UNIX" nu este furnizat.

<?php
$today = getdate();
echo '<pre>';
print_r($today);
echo '</pre>';

/* Va afisa ceva similar cu:
Array
(
[seconds] => 7
[minutes] => 52
[hours] => 13
[mday] => 31
[wday] => 6
[mon] => 7
[year] => 2010
[yday] => 211
[weekday] => Saturday
[month] => July
[0] => 1280584327
)
*/
?>

17.   localtime(timp_UNIX, bool)

- Returneaza un Array cu informatii despre ora locala (a serverului) la timpul specificat in parametrul "timp_UNIX" (sau timpul curent, daca acesta nu e adaugat).
"bool" poate fi true sau false, si e optional. Daca e specificat true, va returna un Array asociativ, in rest, un Array secvential.

<?php
echo '<pre>';
print_r(localtime(time(), true));
echo '</pre>';

/* Va returna ceva similar cu:
Array
(
[tm_sec] => 29             // - secunde
[tm_min] => 7              // - minute
[tm_hour] => 15            // - ora
[tm_mday] => 31            // - ziua din luna
[tm_mon] => 6              // - luna din an, începând cu 0 pentru Ianuarie
[tm_year] => 110           // - Numărul de ani de la 1900
[tm_wday] => 6             // - Numarul zilei din saptamana
[tm_yday] => 211           // - Ziua din an
[tm_isdst] => 0            // - Dacă timpul de vară este în vigoare
)
*/
?>

18.   microtime(bool)

- Returneaza timpul curent Unix cu microsecunde. Dacă parametrul opțional "bool" este stabilit în TRUE, atunci este returnata o valoare Float (cu virgula, în secunde), altfel, returneaza sirul "msec. sec.", unde 'sec.' este timpul curent măsurat în numărul de secunde de la Epoca Unix (0:00:00 January 1, 1970 GMT) și 'msec.' este partea cu microsecunde.

<?php
echo microtime();         // 0.62055800 1280589862
echo microtime(true);         // 1280589862.6624
?>

19.   mktime(ora, minut, secunde, luna, zi, an)

- Obtine timpul Unix al argumentelor furnizate, care sunt numere intregi ce reprezinta: "ora", "minutul", "secundele", "luna", "ziua" si "anul" din data ce o formeaza. Dacă argumentele nu sunt valide, funcția întoarce FALSE.

<?php
echo mktime(14, 48, 30, 7, 7, 1996);         // 836750910
echo '7 Iulie 1996 este intr-o zi de '. date('l', mktime(14, 48, 30, 7, 7, 1996));         // 7 Iulie 1996 este intr-o zi de Sunday
echo date('c', mktime(14, 48, 30, 7, 7, 1996));         // 1996-07-07T14:48:30+00:00
?>

20.   strtotime('data_form')

- Returneaza timpul UNIX a aproape oricarei descrieri textuale în limba engleză a datei și orei specificate in sirul "data_form".
Dacă anul este specificat cu două cifre, valorile între 00-69 sunt interpretate ca 2000-2069, iar valorile între 70-99 ca 1970-1999.

<?php
echo strtotime('now');
echo '<br />'. strtotime('08 September 2008');
echo '<br />'. strtotime('+1 day');
echo '<br />'. strtotime('+1 week');
echo '<br />'. strtotime('+1 week 2 days 4 hours 2 seconds');
echo '<br />'. strtotime('next Thursday');
echo '<br />'. strtotime('last Monday');
?>

21.   time()

- Returneaza timpul curent, in format UNIX, si anume numarul de secunde de la 1 Ianuarie 1970 ora 0 (1 Ianuarie 1970 00:00:00 GMT). Numarul returnat poate fi folosit cu functia "date()" pentru a obtine data intr-un format cunoscut sau parti din data (ziua, ora, luna, etc.).

<?php
echo time();         // Timpul UNIX curent
$nextWeek = time() + (7 * 24 * 60 * 60);         // Timpul UNIX curent + 7 zile; 24 ore; 60 minute; 60 secunde
echo 'Săptămâna următoare: '. date('d-m-Y', $nextWeek);
?>


- Lista completa cu functiile PHP pentru lucru cu Data si Timp o gasiti la pagina Functii pentru Data si Timp

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag adauga rand nou in paragraf?
<b> <br> <p>
Prima linie ...<br>
Alta linie...
Ce proprietate CSS seteaza spatiu dintre litere?
text-size word-spacing letter-spacing
#id {
  letter-spacing: 2px;
}
Ce functie obtine accesul la un element HTML cu un anumit ID?
getElementById() getElementsByTagName() createElement()
var elm = document.getElementById("theID");
var content = elm.innerHTML;
alert(content);
Clic pe instructiunea "echo" utilizata corect.
echo "CoursesWeb.net" echo "CoursesWeb.net"; echo ""CoursesWeb.net";
echo "Adresa URL: http://CoursesWeb.net";
Care din urmatoarele expresii cu "paint" (a picta) se foloseste pentru forma Negativa?
will paint not paint have painted
She does not paint that landscape.
- Ea nu picteaza acel peisaj.
Care din urmatoarele expresii cu "cantar" (a canta) se foloseste pentru propozitie Negativa?
ir a cantar cantaba no cantar
Ella no canta esa canción.
- Ea nu canta acel cantec.
Functii pentru Data si Timp

Last accessed pages

  1. Scena Panouri si instrumente de lucru in Flash (213)
  2. Principalele ferestre de lucru in Adobe Flash CS5 (365)
  3. Trecutul nedefinit 8 (265)
  4. Utilizare Gradient (921)
  5. Confusable words - Cuvinte confundabile (6360)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1164)
  2. Coduri pt culori (863)
  3. Curs HTML gratuit Tutoriale HTML5 (724)
  4. Cursuri limba engleza gratuite si lectii online (366)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (336)