Вы можете использовать spl_autoload_register () или __autoload () для создания любых правил, которые вам нужны для включения файлов, которые вам нужны для классов, однако автозагрузка вносит свои ограничения в производительность. Вам нужно будет убедиться, что все, что вы используете, будет добавлено ко всем страницам графического интерфейса пользователя с помощью настройки php.ini или конфигурации apache.
Для ваших файлов с общими функциями я бы предложил вам обернуть их в служебный класс и выполнить простой поиск и замену, чтобы заменить все ваши вызовы функции () на util :: function (), что затем позволит вам автозагрузка этих функций (опять же, при вызове метода накладываются накладные расходы, а не глобальная функция).
По сути, лучше всего вернуться к своему коду и погасить задолженность по дизайну, исправив ошибки включения. Это даст вам наибольшее преимущество в производительности и позволит максимально использовать возможности оптимизаторов, таких как eAccelerator, Zend Platform и APC
.
Вот пример способа динамической загрузки материала
public static function loadClass($class)
{
if (class_exists($class, false) ||
interface_exists($class, false))
{
return;
}
$file = YOUR_LIB_ROOT.str_replace('_', DIRECTORY_SEPARATOR, $class).'.php';
if (file_exists($file))
{
include_once $file;
if (!class_exists($class, false) &&
!interface_exists($class, false))
{
throw new Exception('File '.$file.' was loaded but class '.$class.' was not found');
}
}
}