![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, problem jest bardzo prosty ale nie znalazłem rozwiązania:
Chodzi mi o "wrażliwośc" na doże i małe litery w nazwie klasy przy tworzeniu obiektu:
i druga wersja:
rozwiązanie sprawdzałem(PHP5/Win PHP5/Debian) i i działa poprawnie w obydwu przypadkach, niemniej by może - i właśnie tego nie wiem - nazewnictwo klasy jest zależne od dyrektyw PHP na różnych serwerach. Będę wdzięczny za pomoc!! LA |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
PHP nie jest wrażliwe na wielkość liter w nazwach klas, ale... (zawsze jest jakieś ale (IMG:style_emoticons/default/tongue.gif) )
Problem pojawia się przy wykorzystaniu autoloadera klas. Posłużę się przykładem:
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 130 Pomógł: 11 Dołączył: 7.04.2003 Ostrzeżenie: (10%) ![]() ![]() |
Dlatego dobrą praktyką jest zastosowanie strtolower() na łańcuchach reprezentujących katalogi w path do pliku z klasą. Kwestia dużych liter w nazwach klas jest jedynie konwencją. Pliki zdecydowanie przy użyciu wyłącznie małych liter.
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
@smentek - Nie wiem, skąd czerpiesz informacje, ale są one odrobinę nie na czasie. To, że Windows jest durnym systemem i ignoruje wielkość znaków, to nie znaczy, że my mamy się dostosowywać do tego, skoro produkcyjne serwery w większości pracują pod kontrolą unixowych systemów. Większość autoloaderów bazuje na nazwie pliku z klasą, więc jeśli klasa ma nazwę MojaKlasa, to plik powinien się nazywać MojaKlasa.class.php, MojaKlasa.php lub class.MojaKlasa.php i to można uznać za standard.
Powoływanie obiektu klasy A jako new a() jest błędem, mimo, że obiekt powstanie. Przenoszę na PHP |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.09.2025 - 11:15 |