Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

Przeliczanie czasu UNIXOWEGO na czas rzeczywisty


Ilovenoobs
 Udostępnij

Rekomendowane odpowiedzi

Dzisiaj w wolnym czasie pozwoliłem sobie napisać w PHP prosty kodzik przeliczający daty w zakresie 2017-2019 z czasu unixowego na normalny. 

Dzięki przede wszystkim za pomoc udzieloną tutaj. 

Tak, oczywiście mogę zrobić ten skrypcik możliwy do działania na wszystkich datach od 1970, ale robiłem to na własne potrzeby do zarządzania czasem z baz przez PHP. Liczę, że komuś się przyda. Od razu z przykładową datą.

<?php
//1483228800 2017-01-01 00:00
//86400 dzien
//31536000 rok

$m = 1;

$czas = 1495670401;

if ($czas < 1483228800+31536000) 
{
	$rok = 2017;
	$d=(1483228800);
}
else if ($czas < 1483228800+31536000*2)
{
	$rok = 2018;
	$d=(1483228800+31536000);
}
else if ($czas < 1483228800+31536000*3)
{
	$rok = 2019;
	$d=(1483228800+31536000*2);
}

if ($czas <= $d+31*86400) $m=1;
else if ($czas <= $d+(59*86400)) $m=2;
else if ($czas <= $d+(90*86400)) $m=3;
else if ($czas <= $d+(120*86400)) $m=4;
else if ($czas <= $d+(151*86400)) $m=5;
else if ($czas <= $d+(182*86400)) $m=6;
else if ($czas <= $d+(212*86400)) $m=7;
else if ($czas <= $d+(243*86400)) $m=8;
else if ($czas <= $d+(273*86400)) $m=9;
else if ($czas <= $d+(304*86400)) $m=10;
else if ($czas <= $d+(334*86400)) $m=11;
else if ($czas <= $d+(365*86400)) $m=12;

switch ($m) {
    case 1:
		$zbedne = ($d+86400);
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 2:
		$zbedne = ($d+(86400*31));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 3:
		$zbedne = ($d+(86400*59));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
	case 4:
		$zbedne = ($d+(86400*90));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 5:
		$zbedne = ($d+(86400*120));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 6:
		$zbedne = ($d+(86400*151));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 7:
		$zbedne = ($d+(86400*182));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 8:
		$zbedne = ($d+(86400*212));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 9:
		$zbedne = ($d+(86400*243));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
	case 10:
		$zbedne = ($d+(86400*273));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 11:
		$zbedne = ($d+(86400*304));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
    case 12:
		$zbedne = ($d+(86400*334));
		$rawday = ($czas-$zbedne);
		$dzien = ceil($rawday/86400);
        break;
}
echo $rok." ".$m." ".$dzien;
?>

 

Edytowane przez Ilovenoobs
Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×
×
  • Dodaj nową pozycję...