![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 0 Dołączył: 7.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.Gdy chce dla przykłady utworzyć obiekt klasy Form_Tab która dziedziczy po Zend_Form.Która znajduje się w folderze model to tworząc obiekt Zend szuka mi tej klasy jako Form\Tab.php.I nie mogę ładować tych klas które mają znak "_".Jak sobie z tym poradzić? proszę o pomoc
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Tak działa autoloader Zend'a i jego konwencja nazw czyli gdzie underscore jest zamieniany na slash.
Poradzić hm szczerze to nigdy tego nie potrzebowałem, ogólnie nie używa się underscore jeżeli klasa nie jest w zagnieżdżonym folderze, można bawić się z autoloaderem, ale szczerze nigdy tego nie próbowałem ![]() -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 0 Dołączył: 7.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
właśnie pozmieniałem ten underscore na normalne znaki.Ale w przyszłości chciałbym wiedzieć czy jest jakieś wyjście na to.Bo w dokumentacji Zend czasami są takie przykłady właśnie połączone z underscore:-( i tylko trzeba usuwać to.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
PHP ma pewne konwencje co do nazewnictwa klas.
Tych konwencji powinieneś się trzymać. Ten post edytował Crozin 27.01.2011, 22:26:04 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 121 Pomógł: 26 Dołączył: 2.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.Gdy chce dla przykłady utworzyć obiekt klasy Form_Tab która dziedziczy po Zend_Form.Która znajduje się w folderze model to tworząc obiekt Zend szuka mi tej klasy jako Form\Tab.php.I nie mogę ładować tych klas które mają znak "_".Jak sobie z tym poradzić? proszę o pomoc Bo ta klasa powinna znajdować się w folderze application/forms. Tak jak wcześniej powiedziane, ZF zamienia nazwę klasy na jej lokalizację w strukturze plików. Z tym, że domyślnie posiada zdefiniowanie kilka ścieżek do tzw. 'resource' - patrz tutaj => http://framework.zend.com/manual/en/zend.l...r-resource.html. Co to znaczy? Znaczy to, że ZF będzie szukał klas na takiej zasadzie:
Jednak należy zwrócić uwagę, że podczas ładowania klas Zend szuka automatycznie klas z dodanym prefixem aplikacji - domyślnie brzmi on "Application". Zmienia się to w pliku .ini: Kod appnamespace = "My" Jeśli będziesz miał taki wpis jak wyżej, musisz nazywać klasy razem z tym prefixem, czyli My_Form_tab, My_Model_Customer. Aby ZF znajdował klasy bez prefixu, takie jak Twoja Zend_Tab musisz ustawić appnamespace na pustą wartość: Kod appnamespace = "" Trochę więcej informacji na temat domyślnego autoloadera znajdziesz w tutorialu Roba Allena (dział Model): http://akrabat.com/zend-framework-tutorial/ Ten post edytował singles 28.01.2011, 09:14:51 -------------------- Works for me => u mnie działa - blog o (o)programowaniu i nie tylko
meet.php - darmowe meetupy związane z PHP |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.06.2025 - 14:25 |