Autor Zpráva
Willy
Profil *
Dobrý den, je možné udělat autoload pomocí jmenných prostorů? Například pokud mám třídy MVC\Controller\Blog, MVC\Model\Blog a MVC\Library\Mysql, tak bych chtěl aby bylo možné zadáním například: include(Controller\Blog); načíst soubor umístěný v localhost/app/controller/blog.php, ale zadáním include(Library\Mysql); se načte soubor umístěný v localhost/library/mysql.class.php. Děkuji předem za odpovědi.
Bertram
Profil
Willy:
Ahoj, nebude lepší, když už si s tím budeš muset dát tu práci, to naprogramovat tak, aby jsi žádné include/require nemusel používat?
Willy
Profil *
Například, že bych vytvořil metody loadController(), loadLibrary()? Je to z hlediska PHP správné a nemůže to sebou nést nějaké nevýhody?
Tori
Profil
Willy:
Například, že bych vytvořil metody
... anebo použil existující (funkce __autoload, nebo spíš doporučovaná spl_autoload_register)
Bertram
Profil
Zrovna se v tom také vrtám, jestli chceš, tak se nahlédni na Kritika AutoLoaderu

A pokud budeš dodržovat to, že namespace bude korespondovat s názvy adresářů a jméno souboru bude totožné s názvem třídy, tak to půjde jednodušeji.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: