ďťż

[php] Skrypt odliczający czas

       

Podstrony


telcocafe

Ten kod ma pokazywać ile dni zostało do urodzin, jednak jest w nim błąd? Gdzie?
<?php function daysToBirthday($data){ $born = strtotime($data); //zmieniamy datę urodzin na liczbe sekund od 1 stycznia 1970 $m = date('m', $born); $d  = date('d', $born); $y = date('Y'); $born = strtotime($d.'-'.$m.'-'.$y); $diff = $born - time();  //obliczamy różnice między obecną datą a datą urodzin if($diff < 0)$diff += 3600*24*365; if(($y % 4 == 0 && $y % 100 != 0) || $y % 400 == 0)$diff+=3600*24; return (int)($diff/(3600*24)); //zmiana sekund na dni } $lines = file('urodziny.txt'); $min = 100; $minName = ''; foreach($lines as $line){ list($name, $date) = explode(',',$line); $days = daysToBirthday($date); if($days < $min){      $min = $days;      $minName = $name; } } echo 'Najwczesniej urodziny ma '.$minName.' bedzie to za '.$min.' dni.'; ?>



Zrobiłem Ci funkcję zwracającą pozostałą liczbę dni do urodzin (format dzień.miesiąc[29.06]).
Z odczytywaniem z pliku sam sobie powinieneś poradzić.

function obliczdate($date) { $tab1 = explode('.', $date); $tab2 = explode('.', date('d.m'); $tab3[1] = 31; $tab3[2] = 28; $tab3[3] = 31; $tab3[4] = 30; $tab3[5] = 31; $tab3[6] = 30; $tab3[7] = 31; $tab3[8] = 31; $tab3[9] = 30; $tab3[10] = 31; $tab3[11] = 30; $tab3[12] = 31; if ($tab1[1]!=$tab2[1]) { $dni = $tab3[$tab2[1]] - $tab2[0]; $i = $tab2[1]; $j = $tab1[1]; do { $dni += $tab3[$i]; $i++; } while ($i!=$j) $dni -= $tab3[$tab1[1]] - $tab1[0]; } elseif ($tab1[1]==$tab2[1]) { $dni = $tab3[$tab2[1]] - $tab1[0]; } return $dni; }

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.