Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]Jak prognozowac ilosc dni w miesiacu
cipojsza
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 4.01.2004
Skąd: Gdańsk

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


Robie sobie wykres odwiedzin i powstal taki problem. Czy da sie szybko (2-3 linijki) podając numer miesiąca i rok uzyskać całkowitą ilosć dni w tym miesiącu ?
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://pl.php.net/manual/pl/function.date.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
cipojsza
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 4.01.2004
Skąd: Gdańsk

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


w celu uzyskania ilości dni w obecnie trwającym miesiącu wystarczy:
  1. <?php
  2. $il_dni_mies=date(t);
  3. ?>

takie coś, dzięki nospor
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


nie
  1. <?php
  2. $il_dni_mies=date(t);
  3. ?>

tylko
  1. <?php
  2. $il_dni_mies=date('t');
  3. ?>

bo to byl blad!
I wlacz sobie wyswietlanie wszystkich bledow.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
cipojsza
post
Post #5





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 4.01.2004
Skąd: Gdańsk

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


nie chce sie sprzeczac ale...
  1. <?php
  2. echo date(t);
  3. ?>
wyswietla mi ladnie wartosc 31 (na dzien pisania tego postu).
No chyba, że ten zapis jest niepoprawny ze wzgledu na standardy :-)
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://pl.php.net/manual/pl/language.types.array.php
Cytat
Co wolno, a czego nie w tablicach?
Dlaczego zapis $foo[bar] jest niepoprawny?

W starych skryptach można spotkać taką składnię:

$foo[bar] = 'coś';
echo $foo[bar];
// itd.


Ten zapis jest niepoprawny, ale działa. Dlaczego zatem jest niepoprawny? Powód jest to, co opisano w rozdziale składnia, że pomiędzy nawiasami kwadratowymi ('[' i ']') musi znajdować się wyrażenie. Oznacza to, że można używać czegoś takiego:

echo $arr[ foo(true) ];


Jest to przykład użycia wartości zwracanej przez funkcję jako indeksu tablicy. php zna też stałe, więc można spotkać zastosowanie E_*.

$opis_błędu[E_ERROR] = "Wystąpił poważny błąd";
$opis_błędu[E_WARNING] = "php wysłało ostrzeżenie";
$opis_błędu[E_NOTICE] = "To jest tylko nieformalna uwaga";


Proszę pamiętać, że E_ERROR jest także ważnym identyfikatorem, tak jak bar w pierwszym przykładzie. Ale ostatni przykład znaczy to samo co:

$opis_błędu[1] = "Wystąpił poważny błąd";
$opis_błędu[2] = "php wysłało ostrzeżenie";
$opis_błędu[8] = "To jest tylko nieformalna uwaga";


ponieważ E_ERROR znaczy to samo co 1, itd.

W takiem razie, jak to możliwe, że $foo[bar] działa? To działa, ponieważ bar, zgodnie z jego zapisem powinien być stałą. Jednakże w tym przypadku nie instnieje stała o nazwie bar. php teraz zakłada, że masz na myśli bar literalnie, czyli jako łańucuch "bar", tylko że zapomniałeś napisać cudzysłowów.
Więc dlaczego tak jest źle?

Kiedyś w przyszłości grupa php może chcieć dodać jeszcze jedną stałą lub słowo kluczowe i wtedy będziesz miał kłopot. Dla przykładu, obecnie już nie można używać słów empty i default, gdyż są to specjalne słowa kluczowe.

Poza tym, jeśli dotąd argumenty nie przekonują cię: ta składnia jest po prostu odrzucona i kiedyś może przestać działać.

Notatka: Po przełączeniu error_reporting na E_ALL, zobaczysz, że php generuje ostrzeżenie, kiedy tylko powyższa składnia zostanie użyta. Tak samo generowane będą ostrzeżenia odnośnie innych odrzuconych "udogodnień". (umieść w swoim skrypcie linię error_reporting(E_ALL)winksmiley.jpg


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 07:33