Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Opinia na temat wykorzystania znacznika czasu
new_user
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 20.02.2007

Ostrzeżenie: (0%)
-----


Witam

chciałbym dowiedzieć się jaka jest dokładnie różnica między wykonaniem takiego kodu

  1. $dni = '7';
  2. $tymczasowy_dzien = gmdate('D',strtotime('+'.$dni.' day'));

a
takim
  1. $dni = '7';
  2. $tymczasowy_dzien = gmdate('D',('+'.$dni.' day'));

ktore dzialanie zwroci prawdziwy wynik?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Berg
post
Post #2





Grupa: Zarejestrowani
Postów: 180
Pomógł: 37
Dołączył: 1.05.2008
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Poprawny jest ten kod
  1. $dni = '7';
  2. $tymczasowy_dzien = gmdate('D',strtotime('+'.$dni.' day'));

Przy wykonaniu drugiego skryptu powinieneś dostać false oraz warning. Drugi parametr w gmdate musi być typu int (w drugim przykładzie podajesz string), strtotime zwraca natomiast unixowy czas określony na podstawie przesłanego stringa. Wszystko masz ładnie opisane w manualu.
Pierwszy kod nie jest do końca poprawny, strtotime może zwrócić false jeśli nie będzie w stanie skonwertować przesłanego tekstu do timestamp'a, w takim przypadku gmdate wywali Ci warning. Ogólnie najlepiej żeby to wyglądało tak jak poniżej, wtedy nie powinieneś w razie czego dostać żadnego warningu
  1. $dni = '7';
  2. $timestamp = strtotime('+'.$dni.' day');
  3. if(is_int($timestamp)) {
  4. $tymczasowy_dzien = gmdate('D',$timestamp);
  5. }
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 00:13