Přechod z nette bez prefixů a php 5.2 na verzi se jmennými prostory php 5.3
- darthcz
- Člen | 113
Dobrý den,
chtěl bych se zeptat, co vše je zapotřebí udělat při přechodu z nette bez prefixů a php verze 5.2 na verzi pro php 5.3 se jmennými prostory. Konkrétně na nette 2.0 alpha php 5.3.
Při změně nette v libs a smazání temp se zobrazí pouze bílá stránka :(
Za odpověď děkuji.
- Nox
- Člen | 378
je třeba na začátek souboru doplnit use ..., ...;
tak aby se
ty třídy braly ze správného místa, tzn. např. v bootstrapu (nemusí
být vše)
<?php
use Nette\Debug,
Nette\Application\Route,
Nette\Environment;
?>
a pokud máš moduly, tak na začátek
<?php
namespace <jmenoModulu>Module;
?>
opravte mě prosím jestli se pletu
Editoval Nox (10. 1. 2011 15:14)
- Nox
- Člen | 378
http://php.vrana.cz/…ich-chyb.php
prověř zapnutí error hlášek, pomocí die najdi místo chyby atd.
jedem jedem
- darthcz
- Člen | 113
Tak bílá obrazovka zmizela, zjistil jsem, že v php 5.3 je vyplé zobrazování chyb, tak jsem ho zapl a chyba byla v mojí blbosti – špatně jsem si nahrál loader.php. Nicméně bych se ještě chtěl zeptat, zda je nutné u všech extends tříd psát prefix Nette\ ? Nelze nějak udělat, aby to přebíralo use například z bootstrapu? Případně není nějaký globalní soubor, ze kterého by to bralo use? Abych to nemusel psát v každém modelu, presenteru atd.
Editoval darthcz (10. 1. 2011 16:33)
- jtousek
- Člen | 951
Ne nic takového nelze. Ovšem ono to ani není potřeba. Např. use Nette\Presenter potřebuješ tak akorát v BasePresenter.php, ostatní už dědí od něj. Model je na tom podobně.
Samozřejmě nějakému tomu use v každém souboru se nevyhneš, ale většinou stačí tak 2–3 řádky, výjimečně více.