Если в функции getLocalPath() (в файле /bitrix/modules/main/tools.php) добавить статическую переменную, содержащую наличие каталога local, то общее количество вызовов file_exists() можно уменьшить примерно на 25% (что соответствует примерно 2% общей нагрузки сервера).
Актуально для всех продуктов с ядром D7 (по-моему, начиная с версии главного модуля 14.0.1).
function getLocalPath($path, $baseFolder = "/bitrix")
{
$root = rtrim($_SERVER["DOCUMENT_ROOT"], "\\/");
static $haveLocalDir = null;
if( $haveLocalDir === null )
$haveLocalDir = is_dir($root."/local");
if ($haveLocalDir && file_exists($root."/local/".$path))
{
return "/local/".$path;
}
elseif (file_exists($root.$baseFolder."/".$path))
{
return $baseFolder."/".$path;
}
return false;
} |
Актуально для всех продуктов с ядром D7 (по-моему, начиная с версии главного модуля 14.0.1).
