Вы правы, что ZF2 это совершенно другое животное. На самом деле, по-другому, нет единого плана миграции/стратегии для всех.
Однако, я недавно совершил аналогичную миграцию. Это довольно сложное линейное бизнес-приложение, написанное в течение примерно 18 месяцев, с множеством разнообразных функций. Основными драйверами для решения стали улучшения в модулях и системах событий.
В нашем случае это превратилось в основной выпуск продукта для продукта, который в конечном итоге включал в себя множество изменений пользовательского интерфейса вместе со всей сантехникой.
Предполагая, что вам понравился ZF1, хорошей новостью является то, что ZF2 - это гораздо лучшая структура (в качестве рамки). Компоненты ModuleManager, EventManager, Di и ServiceManager (и общие материалы, связанные с MVC) действительно великолепны, как только вы их забудете. Плохая новость в том, что они являются полным отходом от ZF1. Таким образом, вы, по крайней мере, подписываетесь, чтобы полностью пересмотреть свою рассылку и маршрутизацию, вы попрощаетесь с Zend_Registry (ServiceManager/ServiceLocator - огромное улучшение).
Другая полезная новость заключается в том, что вы почти наверняка можете хранить все старые компоненты ZF1-типа до тех пор, пока они вам понадобятся. Поэтому, если вы полагаетесь на Zend_Cache, Zend_Log, Zend_Mail и т. Д., Немного поиграть с конфигурациями автозагрузчиков должно сделать это возможным.
Что я предлагаю, так это то, что если вы сделаете решительный шаг, подумайте о том, чтобы перенести сначала на ZF2-as-a-framework, а затем позаботиться о библиотеке ZF2-as-a-component.
Если вы придерживаетесь парадигмы толстой модели/тощего контроллера, возможно, просто достаточно просто заменить элементы контроллера, Front-Controller, Zend_Application. После того, как вы это сделаете, вы сможете работать над удалением зависимостей с компонентами ZF1 по мере того, как позволяет время. В моем случае этого было не так много, поскольку все было довольно хорошо учтено и завернуто (так, например, переход от Zend_Cache к Zend \ Cache был тривиальным)
Наконец, вы должны знать, что View -слойный материал (в основном, связанный с хелпером материал) тоже отличается. Если у вас есть куча сложных вещей, связанных с просмотром (частичные, пользовательские view-helers и т. Д.) Повсюду, вам нужно либо переписать их, либо найти способ использования старого материала Zend_View в ZF2, чтобы вы могли мигрировать по частям. Я действительно не занимался этим, потому что наши интерфейсы были довольно простыми, и мы восприняли это как возможность пересмотреть пользовательский интерфейс.
Только мои $ 0,02, но я надеюсь, что это поможет.
Есть ли необходимость в необходимости * миграции? – deceze
Это долгосрочное приложение. Поэтому мы должны убедиться, что что-то не станет устаревшим. – Shaolin
Почему кто-то голосовал, чтобы закрыть этот вопрос? Я не думаю, что я попросил что-то дублировать. Наша потребность несколько специфична – Shaolin