При запуске скриптов из под cron'а и необходимости подключать файлы CMS возникает трудность заключающаяся в том что $_SERVER['DOCUMENT_ROOT'] пуст. Как вариант - обычно прописывают путь жёстко, в скрипте.
Однако если скрипт пишется сначала на "тестовом" сервере, а потом переносится, то перед переносом придётся этот хардкод править, что иногда нежелательно и всегда неудобно. Вот, пусть и не идеальное, но решение авто-определения DOCUMENT_ROOT:
$_SERVER['DOCUMENT_ROOT'] = dirname(__FILE__);
$bxDirPos = strpos($DR, 'bitrix');
if ( $bxDirPos !== false )
$_SERVER['DOCUMENT_ROOT'] = substr($_SERVER['DOCUMENT_ROOT'], 0, $bxDirPos-1);
Помещаем это в самое начало скрипта. Для правильного определения скрипт должен быть расположен внутри подпапок bitrix.Вроде бы просто, но может кому и поможет. Или заставит задуматься не хардкодить :)
Комментариев нет:
Отправить комментарий