2013-09-27 29 views
5

Używam Slim. W wersji documentation pokazano tylko przykłady działające tylko z jednym plikiem index.php, który ma naprawdę mało funkcji dla każdej trasy. Na przykład:PHP - Slim Framework: najlepsza praktyka z wieloma kodami wewnątrz zamknięć tras

$app = new \Slim\Slim(); 
$app->get('/books/:id', function ($id) { 
    //Show book identified by $id 
}); 

Ale w moim przypadku, mój plik index.php jest coraz większe i większe, teraz mam dużo kodu dla większości tras, co jest najlepsze praktyki w tym przypadku? dołączyć pliki wewnątrz zamkniętych tras? Co dzieje się z zakresem zmiennych globalnych, takich jak połączenie DB lub konfiguracja aplikacji? Dziękujemy

Odpowiedz

3

Brian Nesbitt napisał niezły post na ten temat: http://nesbot.com/2012/11/5/lazy-loading-slim-controllers-using-pimple.

Jeśli nie chcesz używać pryszczu, możesz uzyskać kilka pomysłów z sekcji "Wspólna pierwsza próba", w jaki sposób rozdzielić pliki.

zmiana: Od wersji 2.4.0 można użyć wbudowanego kontrolera "Class": Version 2.4.0

+0

Dobry aproach, to zaczyna mieć sens! Wielkie dzięki. –

+1

Co to jest kontroler Class? Dowolny przykład? –

+1

Podany link @bonope ma wyraźny przykład "Class COntroller". – Werner