2013-09-27 19 views
5

Slim kullanıyorum. documentation'da yalnızca her bir rota için çok az işlevselliğe sahip olan yalnızca bir index.php dosyasıyla çalışan örnekleri gösterirler. Örneğin: PHP - İnce Çerçeve: Rota kapanışlarının içinde çok fazla kodla yapılan en iyi uygulama

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

Ama benim durumumda

, benim index.php dosyası daha büyük ve daha büyük oluyor, şimdi en rotalar için kod çok şey var, bu durumda en iyi yöntem nedir? Rota kapanışları içindeki dosyaları dahil etmek için? DB bağlantısı veya uygulama yapılandırması gibi global değişkenlerin kapsamına ne olur? Teşekkürler.

cevap

3

Brian Nesbitt bu konuda güzel bir yazı yazdı: http://nesbot.com/2012/11/5/lazy-loading-slim-controllers-using-pimple.

Sivilce kullanmak istemiyorsanız, "Ortak ilk girişim" bölümünden, sizi nasıl ayıracağınıza dair bir fikir edinebilirsiniz.

güncelleme: sürümü beri dahili "Sınıf denetleyicisi" kullanabilirsiniz 2.4.0: Version 2.4.0

+0

İyi yaklaşımı, mantıklı başlıyor! Çok teşekkürler. –

+1

Sınıf denetleyicisi nedir? Herhangi bir örnek? –

+1

Sağlanan bağlantı @bonope, bir "Sınıf Denetleyicisinin" açık bir örneğine sahiptir. – Werner