ďťż

[PHP] Moja funkcja nie działa

       

Podstrony


telcocafe

Utworzyłem taki skrypt w PHP, który oblicza różnicę pomiędzy podaną datą i aktualną datą i jeśli różnica jest mniejsza niż 14 dni to wykonuje odpowiednie warunki. Poniżej jest kodzik:

$dodano=array('09','08'); $dzien_dodano=$dodano[0]; $dzisiaj=getdate(); $dzien=$dzisiaj['mday']; $dolicz=time()-2592000; $liczba_dni=date('t', $dolicz); if ($dzisiaj['mon']>$dodano[1]) $roznica=$liczba_dni-$dzien_dodano+$dzien; else $roznica=$dzien-$dzien_dodano; if ($roznica<=14) // warunki

W tablicy dodano (1 linijka) podana jest data (tylko dzień i miesiąc) pomiędzy którą ma być liczona różnica z dniem dzisiejszym. Gdy wszystko jest zapisane tak jak wyżej to skrypt działa poprawnie. Jednek będę go używał kilka razy, więc postanowiłem przekształcić go w funkcję:

function added($d,$m) { $dodano=array($d,$m); $dzien_dodano=$dodano[0]; $dzisiaj=getdate(); $dzien=$dzisiaj['mday']; $dolicz=time()-2592000; $liczba_dni=date('t', $dolicz); if ($dzisiaj['mon']>$dodano[1]) $roznica=$liczba_dni-$dzien_dodano+$dzien; else $roznica=$dzien-$dzien_dodano; return $roznica; } //wywołanie funkcji if (added('09','08')<=14) //warunki

Tutaj jest problem. Nie wiem czemu, ale w tym przypadku funkcja zawsze zwraca mi wartość 40, niezależnie od parametrów, które wpiszę. Pokażcie mi gdzie zrobiłem błąd.



dziwne, mnie dizla poprawnie

Rzeczywiście, to działa, tylko podając miesiąc trzeba go podać bez 0, czyli gdy chcemy sierpień to nie 08, tylko 8.

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

  • Sitedesign by AltusUmbrae.