$globals = array($_REQUEST, $_SESSION, $_SERVER, $_FILES);
//print_r ($globals);
foreach ($globals as $global) {
foreach(array_keys($global) as $key) {
unset($$key);
}
}
Нашел этот код в одном движке и не вижу что собственно удаляется и вообще правильно ли прописано?
Ведь если употребить эхо то будет много предупреждений что нет переменной и параметры переданные функциям неверны
$globals = array($_REQUEST, $_SESSION, $_SERVER, $_FILES);
//print_r ($globals);
foreach ($globals as $global) {
foreach(array_keys($global) as $key) {
echo $$key;
}
}
Notice: Undefined variable: _SESSION in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 4 Warning: array_keys() expects parameter 1 to be array, null given in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 7 Warning: Invalid argument supplied for foreach() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 7 Notice: Undefined variable: HTTP_USER_AGENT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_HOST in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_ACCEPT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_ACCEPT_LANGUAGE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_ACCEPT_CHARSET in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_ACCEPT_ENCODING in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_COOKIE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_COOKIE2 in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_CACHE_CONTROL in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_CONNECTION in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: HTTP_TE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: PATH in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SystemRoot in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: COMSPEC in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: PATHEXT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: WINDIR in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_SIGNATURE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_SOFTWARE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_NAME in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_ADDR in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_PORT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: REMOTE_ADDR in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: DOCUMENT_ROOT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_ADMIN in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SCRIPT_FILENAME in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: REMOTE_PORT in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: GATEWAY_INTERFACE in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SERVER_PROTOCOL in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: REQUEST_METHOD in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: QUERY_STRING in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: REQUEST_URI in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: SCRIPT_NAME in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: PHP_SELF in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Notice: Undefined variable: REQUEST_TIME in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php-LIBRARY\Test.php on line 8
Спустя 13 минут, 43 секунды (29.07.2011 - 18:19) jetistyum написал(а):
видимо этот код существует на случай включенной переменной register_globals
но перед удалением переменной не производится проверка существования ... кривовато конечно работает, на хостингах чаще всего эта директива отключена. можно этот кусок кода убрать, если уверены что register_globals=off
но перед удалением переменной не производится проверка существования ... кривовато конечно работает, на хостингах чаще всего эта директива отключена. можно этот кусок кода убрать, если уверены что register_globals=off
Спустя 11 минут, 24 секунды (29.07.2011 - 18:30) Nuzhser написал(а):
А можна пояснити якшо глобалс включений механізм роботи цього куска коду.
if (ini_get('register_globals')) {
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');
session_set_cookie_params(0, '/');
session_start();
$globals = array($_REQUEST, $_SESSION, $_SERVER, $_FILES);
foreach ($globals as $global) {
foreach(array_keys($global) as $key) {
unset($$key);
}
}
}
Спустя 4 минуты, 32 секунды (29.07.2011 - 18:35) Winston написал(а):
Nuzhser
Ты этот вопрос этот только для украинцев задал? Остальные вряд ли тебя поймут
Ты этот вопрос этот только для украинцев задал? Остальные вряд ли тебя поймут

Спустя 1 минута, 36 секунд (29.07.2011 - 18:36) jetistyum написал(а):
если register_globals включен, то установить переменные настройки php такие - то в такое-то состояние
читай тут
http://php.net/manual/en/session.configuration.php
не стесняйся гуглить, все есть в интернетах
читай тут
http://php.net/manual/en/session.configuration.php
не стесняйся гуглить, все есть в интернетах
Спустя 2 минуты, 8 секунд (29.07.2011 - 18:38) jetistyum написал(а):
мне ркажется что украинский очень простой язык, чтобы его "нельзя было понять"

Спустя 9 минут, 48 секунд (29.07.2011 - 18:48) Nuzhser написал(а):
PHPprogrammer ты шо за всих так пэрэжываеш?
Якшо так то дублюй свойи посты на английську бо пив свиту тэбэ не розумие
Якшо так то дублюй свойи посты на английську бо пив свиту тэбэ не розумие
Спустя 4 минуты, 48 секунд (29.07.2011 - 18:53) Winston написал(а):
Спустя 6 минут, 15 секунд (29.07.2011 - 18:59) jetistyum написал(а):
Nuzhser
Зачем грубить, PHPprogrammer сделал вполне уместное замечание, можно к нему прислушаться, можно не прислушаться, но грубить то зачем? Если тут каждый будет думать только о себе, тогда наверное такие вопросы останутся без ответа, ведь это не моя, не его проблема, задумайся, ну и вежливость никому не мешала еще.
Зачем грубить, PHPprogrammer сделал вполне уместное замечание, можно к нему прислушаться, можно не прислушаться, но грубить то зачем? Если тут каждый будет думать только о себе, тогда наверное такие вопросы останутся без ответа, ведь это не моя, не его проблема, задумайся, ну и вежливость никому не мешала еще.
_____________
Лэт ит би