Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

CodeIgniter User Guide Version 2.1.3


Обновление от 1.7.2 до 2.0.0

Перед выполнением обновления вы должны выключить ваш сайт, заменив index.php статичной версией.

Шаг 1: обновите файлы CodeIgniter

Замените все файлы и поддиректории в директории system, за исключением вашей директории application.

Примечание: Если вы модифицировали вручную какие-то файлы в этих директориях, не забудьте сделать их копии.

Шаг 2: Исправьте get_dir_file_info() там, где необходимо

Версия 2.0.0 принесла обратную несовместимость с get_dir_file_info() в помощнике File. Обратная несовместимость — экстремально редкое явление в CodeIgniter, но мы чувствуем, что в данном случае это оправданно из-за того, что можно было создать серьезные проблемы с производительностью. Если вам нужна рекурсия, там, где вы используете эту функцию помощника, замените вызовы, установив второй параметр $top_level_only в FALSE:

get_dir_file_info('/path/to/directory', FALSE);

Шаг 3: Конвертируйте ваши плагины в помощники

2.0.0 избавляется от системы плагинов, в пользу идентичных по функциональности, но нерасширяемых помощников. Переименуйте файлы плагинов filename_pi.php в файлы помощников filename_helper.php, переместите их в вашу директорию helpers и замените все вызовы: $this->load->plugin('foo'); на $this->load->helper('foo');

Шаг 4: Обновите хранящиеся зашифрованные данные

Примечание: Если ваше приложение не использует библиотеку Encryption, и не хранит зашифрованные данные, или работает в окружении, не поддерживающем Mcrypt, вы можете пропустить этот шаг.

Библиотека Encryption получила ряд улучшений, некоторые для увеличения силы шифрования, и некоторые для производительности, которые сделани невозможным использование зашифрованных данных ранней версией этой библиотеки. Чтобы помочь с миграцией, был добавлен новый метод encode_from_legacy(), Который декодирует данные из оригинального алгоритма и возвращает перекодированные строки, используя улучшенные методы. Это позволит вам легко заменить старые данные новыми в ваших приложениях, на лету или массово.

Пожалуйста прочтите как использовать этот метод в документации библиотеки Encryption.

Шаг 5: Удалите вызовы помощника compatibility.

Помощник compatibility был перемещен из ядра CodeIgniter. Все его методы теперь доступны в поддерживаемых версиях PHP.

Шаг 6: Обновите расширение классов

Все классы ядра имеют префикс CI_. Обновите модели и контроллеры, чтобы они расширяли CI_Model и CI_Controller, соответственно.

Step 7: Обновите вызовы родительского контроллера

Все родные классы CodeIgniter теперь используют соглашение PHP 5 __construct(). Пожалуйста обновите расширенные библиотеки вызовами parent::__construct().

Шаг 8: Обновите ваше руководство пользователя

Пожалуйста замените вашу локальную копию руководства новой версией, включая файлы изображений.

Поделиться


Переведено в компании Аринт.

Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter

Яндекс.Метрика