Ben de, PHP bir Homegrown MVC framework yazdı. Bu oldukça basit, sizin çerçeve işten herhangi bir "ActiveRecord" işlevselliğini kaldırmak özellikle. Ben kabul bazı şeyler:
How are you going to map URLs to controllers?
Bunun yerine kongre (FooController için / foo haritalar) tarafından şeyler yapıyor, ben yapılandırması yoluyla her şeyi yaptım. O benim uygulama kabul edecek her türlü URL listesi burada ben bir ana routes.php dosyasını olması. Bu yüzden onun şeylerle dolu gibi:
Router::add( '/foo/:Param1/:Param2',
array( 'Controller' => 'MyController',
'Action' => 'my_method',
'Method' => 'GET',
'Parameters' => array( 'Param1' => '\d+',
'Param2' => '\S+' ) );
Bu durumda biz /foo/123/abc gibi adresler maç. URL uyumlu olduğunda, bu MyController::my_method( array( 'Param1' => '123', 'Param2' => 'abc' ) ); olarak gönderilir.
How are you going to generate views?
Orada çiftleşmiş sistemlerinin çok sayıda bulunmaktadır. Ama gerçekten, PHP zaten mükemmel bir şablon sistemi. Benim çerçevede, ben sadece üst düzey Controller sınıfında bir function template() oluşturuldu. Ve hepsi bir include $Template performans aşağı kaynar. Yine, benim çerçevesinde, hiçbir kuralı yoktur. Istek bir tepki olarak HTML, XML veya JSON bekliyor ise, her kontrolör uygun örnekleniminin sorumlu ve anlayış için.
Can you use an existing framework?
Benim kod bir sürü Cake, tanınmış PHP MVC çerçevesinde esinlenilmiştir. Eğer çok geçmeden önce ben kesinlikle bunun bir göz alırdım. Eğer popüler olanlar tüm nasıl çalıştığını anlayarak, kendi, en azından başlangıç rulo gidiyoruz. Sonunda, benim uygulama kendine özgü gereksinimleri benim kendi inşa ve yolda gitmek yapılmış, ama zaten orada tüm çerçeveler öğrenilecek çok şey vardı. Etrafında uzun bir göz atın ve sizin için çalışan bir şey bulabilirsiniz. En azından, size your çerçevenin dışında ihtiyaç tam olarak anlamaya olabilir.