Etiketli Mesajlar: ini

Hızlı Başlat Symfony DI (Bağımlılık Enjeksiyonu) Öğretici

By , Cumartesi 14 Ağustos 2010 14:21

Nedir bağımlılık enjeksiyon (DI)?

Bağımlılık enjeksiyon gevşek bir yazılım uygulaması içinde nesneler için izin veren bir tekniktir. Genel olarak eğer bir nesnenin başka bir dahili sistemleri için sıkı birleştiğinde önde gelen örneği olacaktır işlevine erişim gerektiren. Bağımlılık enjeksiyon uygulayarak gerekli nesneleri kullanıma hazır (IOC bazen de kontrol inversiyon anılacaktır) enjekte edilir. Aşağıdaki örneği ele alalım:

  <? Php
 sınıf karar organı {
     kamu fonksiyonu makeDecision (dizi $ parametreler) {
         / / Veritabanı adaptör ihtiyacınız var
         $ Dp = yeni DecisionParameters ();
         ABD doları parameterScore = $ dp-> getScore (parametreler);
         / * ...  Biraz daha karar mantığı ...  * /
         return ($ parameterScore> 50);
     }
 } 

Bu kod parçası DecisionParameters nesneye sıkıca lanacak söyledi. Yukarıdaki gibi bir şey olurdu gevşek bir biçimde yeniden yazma ....

  <? Php
 sınıf karar organı {
     private $ _dp;
     public function __construct ($ dp) {
         $ This-> _dp = $ dp;
     }
     kamu fonksiyonu makeDecision (dizi $ parametreler) {
         ABD doları parameterScore = $ this-> _dp-> getScore (parametreler);
         / * ...  Biraz daha karar mantığı ...  * /
         return ($ parameterScore> 50);
     }
 } 

Biz her zaman bir nesne, biz de bağımlılıkları örneğini çok bu geçmek zorunda örneği olduğu gibi karmaşıklık ekleyerek gevşek kod yararları kazanıyor rağmen. Örneğin, bu:

  ABD doları seçim = new karar organı ();
 echo $ seçim-> makeDecision (array ('çaba' => 'düşük', 'geri dönüş' => 'yüksek')); 

şu şekilde olacaktır:

  $ Dp = yeni DecisionParameters ();
 ABD doları seçim = new karar organı (DP);
 echo $ seçim-> makeDecision (array ('çaba' => 'düşük', 'geri dönüş' => 'yüksek')); 

Bu durum, bir sınıf için bağımlılıkları sayısı arttıkça daha da ağrılı hale gelir ve kendilerini bağımlılıkları bağımlılıkları ne olur? Bu oldukça hızlı bir şekilde, bir nesne yönetim kabus haline! Bağımlılık enjeksiyon kapları (veya çerçeveler) girin ...
Okuma 'Quick Start Symfony DI (Bağımlılık Enjeksiyonu) Tutorial' Devamı »

Rota isteklerini özel denetleyicisi / eylem sitemap.xml

By , Çarşamba 6 Ocak 2010 12:13

Doğrudan / istekleri için sitemap.xml sizin özel bir kontrol ve eylem için Zend Framework uygulaması sadece (örneğin I navigation.ini kullanmak) application.ini veya alternatif config dosyası aşağıdakileri ekleyin:

 resources.router.routes.sitemap.route = "sitemap.xml"
 resources.router.routes.sitemap.defaults.controller = İndeks
 resources.router.routes.sitemap.defaults.action = Site Haritası

Örnek kodu çıktısı için uygun denetleyicisi (benim haritası index denetleyicisi, site haritası eylem yatıyor gibi) bir eylem oluşturarak görülebilir:

 < php
 sınıf IndexController
     Zend_Controller_Action uzatır
 {
     / **
      * Zend_Navigation kurulum dayalı bir site haritası oluşturur
      * /
     public function sitemapAction ()
     {
    	 echo $ this-> görünüm-> Navigasyon () -> site haritası ();
    	 $ This-> görünüm-> düzen () -> disableLayout ();
    	 $ This-> _helper-> viewRenderer-> setNoRender (true);
     }
 }

Site Haritaları hızlı ve kolay bir şekilde oluşturulabilir Zend_Navigation büyük bir hızlı öğretici (ve genellikle Zend Framework öğreticiler için çok yararlı) Zend Kastlari - Dinamik bir site haritası ve kırıntıları bir menü oluşturmak .













Panorama Tema göre Themocracy

9 ziyaretçi şu anda çevrimiçi
6 misafir, 3 bot, 0 üye
Bugün Max ziyaretçiler: 12:00 'de 11 UTC
Bu ay: 19-08-2011 06:09 19 UTC
Bu yıl: 130 28-03-2011 22:40 UTC
Bütün Zaman: 28-03-2011 10:40 UTC de 130