<?php
function secondToString( $Seconds ) {
// Tablica $jednosci.
60*60*24*365 => ' rok', // lata
60*60*24*31 => ' miesiac', // miesiace
60*60*24 => ' dzien', // dni
60*60 => ' godzina', // godziny
60 => ' minuta', // minuty
1 => ' sekunda', // sekundy
);
$zawartosc = '';
foreach( $jednosci As $czas_minuty => $czas_sekundy) {
$iDiv = $Seconds/$czas_minuty;
// Deklarujemy funkcje wyboru switch, aby pomogla nam odmienić tablice $jednosci przez przypadki.
switch($czas_sekundy){
case ' sekunda':
if($iDiv >= 2 && $iDiv <= 4){
$czas_slownie = " sekundy";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds -= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case sekunda.
if($iDiv >= 5){
$czas_slownie = " sekund";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case sekunda.
case ' minuta':
if($iDiv >= 2 && $iDiv <= 4){
$czas_slownie = " minuty";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case minuta.
if($iDiv >= 5){
$czas_slownie = " minut";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case minuta.
case ' godzina':
if($iDiv >= 2 && $iDiv <= 4){
$czas_slownie = " godziny";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case godzina.
if($iDiv >= 5){
$czas_slownie = " godzin";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case godzina.
case ' dzien':
if($iDiv >= 2 && $iDiv <= 4){
$czas_slownie = " dni";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case dzien.
if($iDiv >= 5){
$czas_slownie = " dni";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case dzien.
case ' miesiac':
if($iDiv >= 2 && $iDiv <= 5){
$czas_slownie = " miesiace";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case miesiac.
if($iDiv >= 5){
$czas_slownie = " miesiecy";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case miesiac.
case ' rok':
if($iDiv >= 2 && $iDiv <= 4){
$czas_slownie = " lata";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case rok.
if($iDiv >= 5){
$czas_slownie = " lat";
$zawartosc .= $x.''.$czas_slownie.' ';
$Seconds-= $x*$czas_minuty;
break;
} // zakonczenie instrukcji if - case rok.
default:
if( $iDiv >= 1 ) {
$zawartosc .= $x.''.$czas_sekundy.' ';
$Seconds-= $x*$czas_minuty;
} // zakonczenie instrukcji if - case default.
} // zakonczenie wykonania switch ($czas_sekundy).
// Sprawdzamy miesiące, które mają 31 dni oraz gdy warunek okaże sie prawdą zamieniamy rekord w tablicy.
if(date("m") === "01" || date("m") === "03" || date("m") === "05" || date("m") === "07" || date("m") === "08" || date("m") === "10" || date("m") === "12" ){
$zamien = array(60*60*24*31 => ' miesiac'); array_replace($jednosci, $zamien);
}
else {
$zamien = array(60*60*24*30 => ' miesiac'); array_replace($jednosci, $zamien);
}
// Sprawdzamy rok przestepny.
$zamien = array(60*60*24*366 => ' rok'); array_replace($jednosci, $zamien);
}
} // zakończenie petli foreach.
return $zawartosc;
} // zakończenie funkcji secondToString.
echo secondToString
($name = $_REQUEST['name']); // Wyświetlamy wyniki wpisane w pole tekstowe.
?>