LINUX.ORG.RU

Отладка скрипта на PHP, установить $_SERVER['DOCUMENT_ROOT']

 


0

2

Добрый день, подскажите пожалуйста, нужно отладить скрипт серверный, но скрипт требует установки параметра DOCUMENT_ROOT. C php я немного работаю, привык отлаживаться php_cgi some_script.php key=value, но как вот этот параметр DOCUMENT_ROOT задать принудительно?


Ответ на: комментарий от da17

Почему не подходит? Опиши какие проблемы возникают.

# main.php
<?php
echo $_SERVER['DOCUMENT_ROOT'], PHP_EOL;
$ php -r '$_SERVER["DOCUMENT_ROOT"] = 123; require "main.php";'
123

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от iSage

В случае с обычным php - тоже (а чем они отличаются то вообще?).

Собственно, почти всё содержимое $_SERVER это и есть env. Не из env там вроде только PHP_SELF, REQUEST_TIME, REQUEST_TIME_FLOAT, argv, argc. На серверах - так же, просто env там не из шелла приходит а по сети от веб-сервера.

firkax ★★★★★
()
Ответ на: комментарий от firkax

а чем они отличаются то вообще?

Протоколом запросов/ответов. в php это улетит в argv/argc (как строка a=b), в cgi это улетит в GET (или POST/etc. если нужно)

<?php
print_r($_GET)
$ php ./test.php a=b
Array
(
)

$ php-cgi ./test.php a=b
X-Powered-By: PHP/8.2.25
Content-type: text/html; charset=UTF-8

Array
(
    [_/test_php] => 
    [a] => b
)

iSage ★★★★
()