воскресенье, 22 ноября 2009 г.

Register-Globals or not?

Возможно, ситуация не совсем распространена, но я столкнулся с таким вот моментом: в компании VAMG, в которой я работаю, есть еще один web-программист. Он делает сайты с обязательной настройкой php.ini, в которой register globals включен.
Естественно, когда приходится редактировать его код (с переносом на локальный сервер), либо тупо переносить на другой хостинг его сайт, возникает проблема в случае, если на новом месте register globals отключено.
Как вариант, конечно, можно включить. Но это не есть правильно.
Я использовал следующий хак:

//Имеем набор переменных формы: n1, n2, n3.
$params = array ('n1', 'n2', 'n3');
foreach ($params as $param) {
eval("$".$param." = '".((isset($_POST[$param]))? $_POST : ((isset($_GET[$param]))? $_GET[$param] : NULL))."';");
}

© Ivan Khramkov, http://web-vamg.com