Functia prezentata in aceasta pagina, diffDateTime(), poate fi utilizata pentru a obtine diferenta dintre 2 date de timp si ore. Aceasta functie primeste doi parametri: data sau ora de inceput, si cea de sfarsit intre care sa faca diferenta. Se pot folosi diferite formate de data si timp: Unix Timestamp, sau un sir continand aproape orice descriere textuala a datei (in engleza).

Functie pt diferenta dintre doua date de timp sau ore

Returneaza un array ce contine un sir cu o reprezentare textuala a diferentei, si separat: zile, ore, minute, secunde, total ore, total minute, total secunde (vedeti in exemplele de mai jos).
/* Functie pt diferenta dintre doua date de timp sau ore
 $start / $end in Unix Timestamp, sau sir continand aproape orice descriere textuala a datei (in engleza)
 Returneaza un array ce contine un sir cu o reprezentare textuala a diferentei,
 si separat: zile, ore, minute, secunde, total ore, total minute, total secunde
*/
function diffDateTime($start, $end) {
 // Curs PHP-MySQL - https://marplo.net/php-mysql/
  // defineste $start si $end in Unix Timestamp
  if(!is_int($start)) $start = strtotime($start);
  if(!is_int($end)) $end = strtotime($end);

  // daca diferenta e negativa, orele sunt din zile diferite, adauga o zi (in sec.)
  $diff = ($end >= $start) ? $end - $start : 86400 + $end - $start;

  // defineste numarul de zile, ore, minute, secunde din diferenta
  $d = floor($diff / 86400);
  $h = floor(abs($diff - $d*86400)/3600);
  $m = floor(abs($diff - $d*86400 - $h*3600)/60);
  $s = $diff % 60;

  // seteaza cuvintele, singular sau plural
  $dstr =  ($d == 1) ? ' zi ' : ' zile ';
  $hstr =  ($h == 1) ? ' ora ' : ' ore ';
  $mstr =  ($m == 1) ? ' minut ' : ' minute ';
  $sstr =  ($s == 1) ? ' secunda ' : ' secunde ';

  // setare pt sirul adaugat in reprezentarea textuala a diferentei
  $sdiff_d = ($d != 0) ? $d.$dstr : '';
  $sdiff_h = ($h != 0) ? $h.$hstr : '';
  $sdiff_m = ($m != 0) ? $m.$mstr : '';

  return array(
   'diff' => $sdiff_d. $sdiff_h. $sdiff_m. $s.$sstr,
   'days' => $d, 'hours'=>$h, 'min'=>$m, 'sec'=>$s,
   'totalhours' => floor($diff/3600), 'totalmin' => floor($diff/60), 'totalsec'=>$diff
  );
}
- Exemple utilizare functie diffDateTime(), cu mai multe formate diferite de data si timp:
<?php
// Aici se adauga functia diffDateTime()

$df1 = diffDateTime('8:35:6', '8:55:34');          // diferenta dintre 2 ore, cu minue si secunde
$df2 = diffDateTime('07/19/2012 14:10:00', 'now');      // diferenta dintre o data precedenta si timpul actual
$df3 = diffDateTime('25 August 2012 14:10:00', '18-09-2012 08:25:00');     // diferenta dintre doua date complete
$df4 = diffDateTime(1348012438, 1348029429);      // diferenta dintre 2 date in Timestamp

// Test, afiseaza array-ul cu datele pt fiecare diferenta

var_export($df1);
/*
array (
 'diff' => '20 minutes 28 seconds ',
 'days' => 0, 'hours' => 0, 'min' => 20, 'sec' => 28,
 'totalhours' => 0, 'totalmin' => 20, 'totalsec' => 1228
)
*/

var_export($df2);
/*
array (
 'diff' => '61 days 16 hours 9 minutes 20 seconds ',
 'days' => 72, 'hours' => 16, 'min' => 9, 'sec' => 20,
 'totalhours' => 1744, 'totalmin' => 104649, 'totalsec' => 6278960
)
*/

var_export($df3);
/*
array (
 'diff' => '23 days 18 hours 15 minutes 0 seconds ',
 'days' => 23, 'hours' => 18, 'min' => 15, 'sec' => 0,
 'totalhours' => 570, 'totalmin' => 34215, 'totalsec' => 2052900
)
*/

var_export($df4);
/*
array (
 'diff' => '4 hours 43 minutes 11 seconds ',
 'days' => 0, 'hours' => 4, 'min' => 43, 'sec' => 11,
 'totalhours' => 4, 'totalmin' => 283, 'totalsec' => 16991
)
*/
?>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tag adauga imagine in pagina web?
<div> <img> <span>
<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS afiseaza textul inclinat?
font-style: italic; text-decoration: underline; font-weight: 500;
#id {
  font-style: italic;
}
Clic pe functia jQuery care ascunde animat un element HTML.
click() hide() show()
$(document).ready(function() {
  $(".a_class").click(function(){ $(this).hide("slow"); });
});
Clic pe functia definita corect in PHP.
fname function() {} function fname() {} function $fname() {};
function fname($a, $b) {
  echo $a * $b;
}
Indicati forma pentru Prezent Perfect Continuu a verbului "to walk" (a merge).
have walked have been walking be walking
I have been walking for 5 hours.
- Merg pe jos de 5 ore.
Indicati Trecutul Nedefinit pentru verbul "ser" (a fi) la forma Yo.
será sería fui
Yo fui entrenador.
- Am fost antrenor.
Obtine diferenta dintre doua Date de Timp si Ore

Last accessed pages

  1. Articolul din limba engleza - The article (20399)
  2. Gramatica limbii engleze - Prezentare Generala (77141)
  3. Creare documente PDF cu PHP si FPDF (368)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (8234)
  5. Utilizare sesiuni (379)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (3029)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (2179)
  3. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (2016)
  4. Curs HTML gratuit Tutoriale HTML5 (1322)
  5. Prezentul simplu si continuu - Present Tense Simple and Continuous (1322)