Nefinguje Auto-loading tříd
- batneby
- Člen | 18
Dobrý den,
mám nette 2.0.13 a php 5.5.6.
Problém je ten že my nefunguje Auto-loading do jedné složky konkrétně se
my nechce načíst složka „app“ kde mám soubor „fusion.php“ nechápu
proč. Ostatní složky a soubory třeba jako libs se načtou normálně.
Zde jsou kódy
index kde načítám ty složky:
include 'libs/Nette/loader.php';
$loader = new Nette\Loaders\RobotLoader;
// přidáme adresáře, které má RobotLoader indexovat
$loader->addDirectory('libs');
$loader->addDirectory('app');
// nastavíme cachování na disk do adresáře 'temp'
$loader->setCacheStorage(new Nette\Caching\Storages\FileStorage('temp'));
$loader->register(); // spustíme RobotLoader
A zde je „fusion.php“ kterej je ve sloce „app“
include '../libs/Nette/loader.php';
$loader = new Nette\Loaders\RobotLoader;
// nastavíme cachování na disk do adresáře 'temp'
$loader->setCacheStorage(new Nette\Caching\Storages\FileStorage('../temp'));
$loader->register(); // spustíme RobotLoader
Děkuji za jakoukoliv radu ;).
- David Matějka
- Moderator | 6445
robot loader neprochazi ty slozky a neinkluduje vsechno v nich.
robot loader pouze projde slozky, proskenuje soubory, najde tridy a vytvori si seznam trida=>soubor, aby vedel, co ma inkludnout, kdyz budes chtit urcitou tridu
a nevim, co ma ten fusion.php za vyznam :)
Editoval matej21 (4. 12. 2013 20:50)
- David Matějka
- Moderator | 6445
funkce napriklad na co?
pokud trvas na tom, ze to budes mit jako klasicky fce, tak se o loading
budes muset postarat rucne.
lepsi je ale si ty fce dat jako staticky do nejaky tridy a robot loader se ti
postara o autoloading