Curs Php-mysql

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
Care tip de <input> creaza un element cu data tip calendar?
type="text" type="date" type="button"
<input type="date" name="set_date" value="2012-10-15" />
Ce proprietate CSS adauga efect de umbre la text?
font-style color text-shadow
h2 {
  text-shadow: 2px 3px 3px #a0a1fe;
}
Clic pe functia care adauga elemente noi la sfarsitul unui array.
pop() shift() push()
var pags = ["lectii", "cursuri"];
pags.push("download", "tutoriale");
alert(pags[2]);            // download
Ce functie aranjeaza un array in ordine crescatoare, dupa chei, mentinand corelatia dintre chei si valori?
asort() ksort() sort()
$lang =[10=>"PHP", 20=>"JavaScript", "site"=>"coursesweb.net");
ksort($lang);
var_export($lang);     // array ("site"=>"coursesweb.net", 10=>"PHP", 20=>"JavaScript")
La adjectivul "big" (mare), care este forma de Comparativ (mai mare)?
biggest biger bigger
He is bigger than his sister.
- El este mai mare decat sora lui.
Care este Comparativul adjectivului "grande" (mare)?
menos grande más grande el más grande
Él es más grande que su hermana.
- El este mai mare decat sora lui.
Obtine diferenta dintre doua Date de Timp si Ore

Last accessed pages

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (276762)
  2. Articole de imbracaminte (510)
  3. Alphabet and Pronunciation - Alfabetul si pronuntia in limba engleza (60692)
  4. Gramatica limbii engleze - Prezentare Generala (217554)
  5. Lectie engleza, prezentare - Hello (3508)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (260)
  2. Curs HTML gratuit Tutoriale HTML5 (248)
  3. Coduri pt culori (172)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (96)
  5. Creare si editare pagini HTML (89)