Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Błąd: Fatal error: Cannot redeclare
Forum PHP.pl > Forum > Przedszkole
kubax33
Znalazłem skrypt, króty oblicza ile minęło dni między jedną data a drugą jednak przy wdrożeniu do skryptu wyskakuje mi błąd:

Gdzie jest knyf?

  1. Fatal error: Cannot redeclare workDays() (previously declared in /homez.506/pracowni/www/panel/info.inc.php:1) in /homez.506 info.inc.php on line ...


  1. function workDays($date1, $date2, $withStartDay = false) {
  2. $date1=strtotime($date1);
  3. $date2=strtotime($date2);
  4. if ($date2===$date1 && !$withStartDay) return 0;
  5. $char=1;
  6. if ($date1>$date2)
  7. {$datePom=$date1;$date1=$date2;$date2=$datePom;$char=-1;}
  8. $count=0;
  9. if (!$withStartDay)
  10. $date1=strtotime('+1 day',$date1);
  11. $date2=strtotime('+1 day',$date2);
  12. $lastYear = null;
  13. $hol=array('01-01','05-01','05-03','08-15','11-01','11-11','12-25','12-26');
  14. while ($date1<$date2) {
  15. $year = date('Y', $date1);
  16. if ($year !== $lastYear){
  17. $lastYear = $year;
  18. $easter = date('m-d', easter_date($year));
  19. $date = strtotime($year . '-' . $easter);
  20. $easterSec = date('m-d', strtotime('+1 day', $date));
  21. $cc = date('m-d', strtotime('+60 days', $date));
  22. $hol[8] = $easter;
  23. $hol[9] = $easterSec;
  24. $hol[10] = $cc;
  25. }
  26. $weekDay=date('w',$date1);
  27. $md = date('m-d',$date1);
  28. if (!($weekDay==0 || $weekDay==6 || in_array($md,$hol) || $year>2010 && $md=='01-06')) {
  29. $count++;
  30. }
  31. $date1=strtotime('+1 day',$date1);
  32. }
  33. $count*=$char;
  34. return $count;
  35. }
  36.  
  37. echo workDays('2007-10-10','2007-10-12'); //wyświetli 2
nospor
1) To mój skrypt
2) Funkcje można deklarować tylko raz, a ty deklarujesz więcej niż jeden raz więc dostajesz błąd - logiczne.

Po komunikacie błędu śmiem twierdzić ze deklaracje funkcji masz w pętli - totalnie bez sensu.
kubax33
1) aaa wiem:) - przydatny
2) pomogłeś była pętla...

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.