Я перенес несколько сайтов с CakePHP 1.2 на 1.3. По моему опыту, это занимает 2-3 часа на сайтах с 5-10 контроллерами и без пользовательских плагинов и т. д. Я обнаружил, что обычно мне нужно изменить синтаксис только для нескольких вызовов функций, и когда я выясняю, какие из них, это просто вопрос поиска/замены на сайте. Конечно, при переходе с версии 1.3 на версию 2.0 может возникнуть проблема, но я не думаю, что это будет особенно резкое изменение API.
ОБНОВЛЕНИЕ: сейчас я нахожусь в процессе перехода на бета-версию CakePHP 2.0 и подумал, что должен обновить ее, так как я обнаружил, что обновления более обширны и далеко идущие, чем я предполагал, когда я написал это. Руководство по миграции здесь: https://github.com/cakephp/docs/blob/master/en/appendices/2-0-migration-guide.rst
ДРУГОЕ ОБНОВЛЕНИЕ: поскольку люди находят это полезным, я просто решил отметить, что Cake теперь предоставляет оболочку обновления, которая выполняет часть работы за вас. Обратите внимание, что, хотя в документации говорится, что он будет выполнять «большую часть» работы, я обнаружил, что все еще есть довольно много вызовов функций и т. д., которые необходимо будет обновить вручную (см. руководство по миграции). http://book2.cakephp.org/en/console-and-shells/upgrade-shell.html
Как сказал дхофстет, все будет зависеть от размера и сложности вашего сайта.
Обновляетесь ли вы вообще, обычно это решение, но иногда вам приходится это делать (например, в Cake 1.2 есть некоторый код, который сломается, если ваш хост обновится до PHP 5.3). У вас, конечно, не будет таких проблем с безопасностью, которые были бы у старой установки WordPress, Drupal и т. д. Я видел некоторое заметное увеличение скорости с обновлениями Cake, поэтому в зависимости от ситуации это может стоить проблем только из-за этого (Cake 2.0, наконец, отказывается от поддержки PHP 4). Посмотрите примечания к выпуску и посмотрите, есть ли в новой версии что-то, что вам понравится.
Чтобы увидеть свою версию, в файле cake/VERSION.txt
посмотрите на самую последнюю строку. Его легко пропустить, но это должно быть просто число, например. 1.3.8
.
person
bjudson
schedule
09.06.2011