2014-02-14 9 views
2

Чтение через ZF2 получать руководство по началу работы, и я был смущен об этой части:ZF2: Когда вы используете autoload_classmap.php

* Поскольку мы находимся в развитии, нам не нужно загружать файлы через classmap, поэтому мы предоставляем пустой массив для автозагрузчика classmap. Создайте файл с именем autoload_classmap.php под ZF2-учебник/модуль/Альбом: *

<?php 
return array(); 

Почему бы нам не нужно autoload_classmap, потому что мы находимся в развитии? Я прочитал документ на autoload_classmap.php, но до сих пор не понимаю, для чего он нужен, и почему это необходимо в продукции.

ответ

8

Что такое classmap?

Classmap - это в основном функциональность вашего приложения, позволяющая быстрее загружать все соответствующие классы. Это связано с тем, что каждому классу присваивается полный путь к файлу и имя файла. Кроме стандартного автозагрузчика, который сопоставляет только пространства имен каталогам.

Почему бы не использовать его во время разработки?

Ответ прост: постоянно обновлять карту классов во время фазы разработки является огромным p.i.t.a. Просто используйте стандартный автозагрузчик во время разработки, и как только ваш модуль будет завершен, создайте карту классов и используйте ее. Вы заметите небольшое ускорение скорости.

Существуют ли альтернативы использованию карты классов ZF2s?

Да, есть. Помимо наличия нескольких классных карт для всех модулей, это даже лучше, если вы просто создаете ОДИН ENORMOUS CLASSMAP для всех модулей, модулей поставщиков, библиотек и т. Д. Решение для этого называется composer

+0

Нота, чтобы фактически создать оптимизированную карту классов с композитор вам нужно запустить «composer install -o», последний параметр «оптимизирован». – Julian

+0

@Julian Если я не ошибаюсь, это 'comper dump-autoload -o' - не нужно запускать всю процедуру установки и обновления;) – Sam

+1

Это тоже, если ваш файл блокировки не изменяется, что в большинстве случаев , вам не нужно запускать обновление; композитор берет данные из своего локального кеша, поэтому запуск установки композитора занимает второе или два, не более того. Тем не менее, дамп-автозагрузка - это более быстрый метод. – Julian

Смежные вопросы