Mam problem bo nie wiem jak ugrysc to:
<?php function result($date){ $explodesqldate = http://www.php.net/explode(".", $date); $data = http://www.php.net/strtotime($explodesqldate[0]."-".$explodesqldate[2]."-".$explodesqldate[1]); $day = http://www.php.net/floor((http://www.php.net/time() - $data) / (60 * 60 * 24)); switch ($day) { case 0: return "Dzisiaj"; case 1: return "Wczoraj"; case 2: return "Przedwczoraj"; case 7: return "Tydzień temu"; case 14: return "Dwa tygodnie temu"; case 21: return "Trzy tygodnie temu"; case 30: case 31: return "Miesiac temu"; case 188: return "pół roku temu"; case 365: case 366: return "Rok temu"; default: if($day >= 365 ) { return http://www.php.net/floor($day / 365) . " lat/a temu (" . http://www.php.net/date ('Y/d/m', $data) . ")"; } else { return $day . " dni temu (" . http://www.php.net/date ('Y/d/m', $data) . ")"; } } } http://www.php.net/echo result("2015.27.01"); ?>
No teraz dzielisz roznice na dni. No to nie dziel na dni a zostaw sekundy i juz
Ja bym użył po prostu: https://carbon.nesbot.com/docs/#api-humandiff zamiast bawić się w takie kombinacje. No chyba że trenujesz dla nauki.
Ma to ręce i nogi
<?php $one = 365*60*60*24; $two = 30*60*60*24; $three = 60*60*24; $four = 60*60; $five = 60; function ShowDifference($No1, $No2, $No3, $No4, $No5) { $date1 = http://www.php.net/mktime(12,22,35,6,3,2019); $date2 = http://www.php.net/time(); $division = http://www.php.net/abs($date2 - $date1); $years = http://www.php.net/floor($division / ( $No1 )); $months = http://www.php.net/floor(($division - $years * $No1) / ($No2)); $days = http://www.php.net/floor(($division - $years * $No1 - $months * $No2)/ ($No3)); $hours = http://www.php.net/floor(($division - $years * $No1 - $months * $No2 - $days * $No3) / ($No4)); $minutes = http://www.php.net/floor(($division - $years * $No1 - $months * $No2 - $days * $No3 - $hours * $No4)/ $No5); $seconds = http://www.php.net/floor(($division - $years * $No1 - $months * $No2 - $days * $No3 - $hours * $No4 - $minutes * $No5)); return 'Fotkę dodano: ' . $years . ' lat, ' . $months . ' miesięcy, ' . $days . ' dni, ' . $hours . ' godzin, ' . $minutes . ' minut, ' . $seconds . ' sekund temu.'; } http://www.php.net/echo ShowDifference( $one, $two, $three, $four, $five ); ?>
$date = http://www.php.net/mktime(12,12,12,6,4,2109);
$actual = http://www.php.net/time();
1,2,3,4,5
Koles wtedy tez zrobil pare rzeczy sam tylko nie ogarnial bledy. A ze byl hamem to inna sprawa
Dobra, do tematu:
Najpierw zadales pytanie
O to mi chodzi:
if(!function_exists('PorownajDaty')) { function PorownajDaty($str1Obj1, $str1Obj2, $str1Obj3, $str2Obj1, $str2Obj2, $str2Obj3) : int { $data_od = http://www.php.net/mktime(07,39,00, $str1Obj1, $str1Obj2, $str1Obj3); $data_do = http://www.php.net/mktime(07,42,00, $str2Obj1, $str2Obj2, $str2Obj3); $roznica = ($data_do - $data_od) / 60 / 60 / 24; return $roznica; }; }; http://www.php.net/echo 'Roznica lat pomiedzy datami to: ' . PorownajDaty('6', '4', '2019', '6', '4', '2019');
Nie dziel roznicy na lata
$roznica = ($data_do - $data_od) / 60 / 60 / 24;
tylko poprostu odejmij
$roznica = $data_do - $data_od;
I masz swoje sekundy
$data_od = http://www.php.net/mktime(07,39,00, $str1Obj1, $str1Obj2, $str1Obj3); $data_do = http://www.php.net/time();
if(!function_exists('PorownajDaty')) { function PorownajDaty($str1Obj1, $str1Obj2, $str1Obj3, $str2Obj1, $str2Obj2, $str2Obj3) : int { $data_od = http://www.php.net/mktime(07,39,00, $str1Obj1, $str1Obj2, $str1Obj3); $data_do = http://www.php.net/time(); $roznica = http://www.php.net/time() - $data_od / 60 / 60 / 24; return $roznica; }; }; http://www.php.net/print 'Roznica lat pomiedzy datami to: ' . PorownajDaty('6', '4', '2019', '6', '4', '2019');
Az tak bardzo sie starasz ze totalnie wylaczyles myslenie
nie
$roznica = time() - $data_od / 60 / 60 / 24;
a:
$roznica = time() - $data_od;
I to jest twoja roznica w sekundach nadal.
Chcesz miec z tego minuty?
$roznica = (time() - $data_od) / 60;
Zamiast sie tak spinac wlacz myslenie. A najlepiej idz spac
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)