Возвращает массив всех определенных переменных

Я пытаюсь получить все переменные, определенные php в массив.

Я пытался :

$myArr = get_defined_vars();
var_dump($myArr);

Результат:

array(4) { ["_GET"]=> array(0) { } ["_POST"]=> array(0) { } ["_COOKIE"]=> array(0) { } ["_FILES"]=> array(0) { } }

НО я ожидаю получить ВСЕ переменные, определенные php:

_SERVER["MIBDIRS"]
_SERVER["MYSQL_HOME"]
_SERVER["OPENSSL_CONF"]
_SERVER["PHP_PEAR_SYSCONF_DIR"]
_SERVER["PHPRC"]
_SERVER["TMP"]
_SERVER["HTTP_HOST"]
_SERVER["HTTP_USER_AGENT"]
_SERVER["HTTP_ACCEPT"]
_SERVER["HTTP_ACCEPT_LANGUAGE"]
_SERVER["HTTP_ACCEPT_ENCODING"]
_SERVER["HTTP_CONNECTION"]
_SERVER["PATH"]
_SERVER["SystemRoot"]
_SERVER["COMSPEC"]
_SERVER["PATHEXT"]
_SERVER["WINDIR"]
_SERVER["SERVER_SIGNATURE"]
_SERVER["SERVER_SOFTWARE"]
_SERVER["SERVER_NAME"]
_SERVER["SERVER_ADDR"]
_SERVER["SERVER_PORT"]
_SERVER["REMOTE_ADDR"]
_SERVER["DOCUMENT_ROOT"]
_SERVER["REQUEST_SCHEME"]
_SERVER["CONTEXT_PREFIX"]
_SERVER["CONTEXT_DOCUMENT_ROOT"]
_SERVER["SERVER_ADMIN"]
_SERVER["SCRIPT_FILENAME"]
_SERVER["REMOTE_PORT"]
_SERVER["GATEWAY_INTERFACE"]
_SERVER["SERVER_PROTOCOL"]
_SERVER["REQUEST_METHOD"]
_SERVER["QUERY_STRING"]
_SERVER["REQUEST_URI"]
_SERVER["SCRIPT_NAME"]
_SERVER["PHP_SELF"]
_SERVER["REQUEST_TIME_FLOAT"]
_SERVER["REQUEST_TIME"]
$_POST
$_GET
$_FILES
$_SERVER
$_REQUEST
$_SESSION
$_COOKIE
$_ENV
$GLOBALS
$argc
$argv
$this
$php_errormsg
$HTTP_SERVER_VARS
$HTTP_POST_VARS
$HTTP_POST_FILES
//etc...

0

Решение

Это невозможно с get_defined_vars() или любые другие функции SPL, насколько мне известно. Вы должны проверить $_SERVER и другие вручную. Кроме того, обычно вам не нужны все перечисленные переменные, некоторые из них устарели или эквивалентны друг другу.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]