Сообщения с тегами: ини

Быстрый старт Symfony DI (Dependency Injection) Учебник

По , в субботу 14 августа 2010 2:21 вечера

Что такое Dependency Injection (DI)?

Вложение зависимости является метод, который позволяет слабосвязанных объектов в приложении. Как правило, если объект требует доступа к функциональности другого было бы экземпляр внутренне приводит к сильно связанных систем. Осуществляя внедрение зависимости мы вводим необходимые объекты готовы к использованию (иногда также называется инверсией контроля - МОК). Рассмотрим следующий пример:

  <? PHP
 лицо, принимающее решения класса {
     общественных makeDecision функции (массив $ параметров) {
         / / Необходимо адаптера БД
         $ Др = новый DecisionParameters ();
         $ = $ ParameterScore др-> getScore ($ параметров);
         / * ...  Еще несколько логики принятия решений ...  * /
         возвращения ($ parameterScore> 50);
     }
 } 

Этот фрагмент кода, как говорят, тесно связан с объектом DecisionParameters. Переписывая выше в слабосвязанных моды мы бы что-то вроде ....

  <? PHP
 лицо, принимающее решения класса {
     частные $ _dp;
     публичную функцию __construct ($ др) {
         $ Это-> _dp = $ др;
     }
     общественных makeDecision функции (массив $ параметров) {
         $ = $ ParameterScore этом-> _dp-> getScore ($ параметров);
         / * ...  Еще несколько логики принятия решений ...  * /
         возвращения ($ parameterScore> 50);
     }
 } 

Хотя получение преимуществ слабосвязанных код, который мы добавляем такие сложности, что каждый раз создается экземпляр объекта мы также должны инстанцировать его зависимости и передать их в слишком. Например, это:

  $ = Выбор новых лицо, принимающее решения ();
 Эхо $ выбор-> makeDecision (массив ('усилие' => 'низкий', 'возвращение' => 'высокий')); 

Теперь становится:

  $ Др = новый DecisionParameters ();
 $ = Выбор новых лицо, принимающее решения ($ др);
 Эхо $ выбор-> makeDecision (массив ('усилие' => 'низкий', 'возвращение' => 'высокий')); 

Эта ситуация становится все более болезненным, как число зависимостей для класса увеличивается, и что делать, если зависимостей сами зависимости? Это может очень быстро стать кошмаром объект администрации! Введите внедрение зависимости контейнеров (или рамки) ...
Продолжить чтение "Быстрый старт Symfony DI (Dependency Injection) Учебник" »

Маршрут запросов на sitemap.xml обычаю контроллер / действие

По , в среду 6 января 2010 12:13 утра

Для того, чтобы прямые запросы для / sitemap.xml для пользовательских контроллера и действия в Zend Framework, приложение просто добавьте следующее в вашем application.ini или альтернативного конфигурационного файла (например, я использую navigation.ini):

 resources.router.routes.sitemap.route = "sitemap.xml"
 resources.router.routes.sitemap.defaults.controller = индекс
 resources.router.routes.sitemap.defaults.action = карта сайта

Пример кода для вывода можно увидеть путем создания действия в соответствующий контроллер (например, моя карта сайта находится в индексе контроллер, карта сайта действия):

 < PHP
 Класс IndexController
     расширяет Zend_Controller_Action
 {
     / **
      * Оказывает карта сайта на основе Zend_Navigation установки
      * /
     общественных sitemapAction функции ()
     {
    	 Эхо $ это-> Вид-> навигация () -> карта сайта ();
    	 $ Это-> Вид-> раскладка () -> disableLayout ();
    	 $ Это-> _helper-> ViewRenderer-> setNoRender (истина);
     }
 }

Sitemaps может быстро и легко быть созданы с помощью Zend_Navigation , большой краткое руководство (и вообще очень полезно для Zend Framework учебники) является Zend отливки - Динамическое создание меню сайта и панировочные сухари .













Панорама тему, Themocracy

3 посетителей онлайн
2 гостей, 1 ботов, 0 пользователей
Максимум сегодня: 19 в 6:09 утра UTC
В этом месяце: 19 на 19-08-2011 6:09 утра UTC
В этом году: 130 в 28-03-2011 10:40 вечера UTC
За все время: 130 в 28-03-2011 10:40 вечера UTC