$ _SERVER корневого документа в CLI

В CLI $_SERVER['DOCUMENT_ROOT'] не работает. Как я могу это исправить? Есть ли другой доступный вариант. Я не могу использовать относительные пути, потому что файлы находятся в разных каталогах.

$ _SERVER содержит заголовки, которые не будут доступны в CLI. Веб-сервер определяет корень документа. В CLI вы не используете веб-сервер, поэтому нет корневого документа.

Вы можете попытаться полагаться на переменные окружения, полагая, что они установлены вашей оболочкой.

Например, PWD представляет текущий каталог, а HOME представляет домашний каталог пользователя.

 $pwd = getenv('PWD'); $home = getenv('HOME'); 

Вы также можете использовать магические константы __FILE__ или __FILE__ чтобы попытаться изобразить путь, в котором вы сейчас находитесь.