|
|
|
| Есть ли смысл после корректного выполнения функции очищать временные суперглобальные переменные, когда register_globals=off.
Пример:
if($_POST['post']=="Y")
{
$my->in_name=$_POST['fci_name'];
$my->in_text=$_POST['fci_text'];
$err=$my->section_change();
if($err)
{
$my->html_error=$my->err_to_html($err);
}else
{
unset($_POST['post'], $_POST['fci_name'], $_POST['fci_text']);
header("Location: fci.php?id_fci=".$_GET['id_fci']."");
}
}
|
И если есть, то в чем. | |
|
|
|
|
|
|
|
для: mazyakov
(29.05.2006 в 18:05)
| | полагаю, что смысл есть. у меня в суперглобальных переменных $_SESSION передавались данные POST (в силу особенности построения моего сайта). и сначала они не очищались (register_globals у меня всегда стоит в off). и вот, отлаживая совершенно другой кусок, я просто-напросто, чтобы не заморачиваться долго и быстро проверить содержимое текущих переменных сессии, вывела на экран это содержимое. и там превосходно сохранились все вызовы всех POST'ов за всю сессию, а я несколько часов сайт отлаживала. это заняло несколько экранов текста :) ну, если сессии у вас небольшие и данных немного, а памяти - куча, то, может быть, и наплевать на это. но если данные - какие-то файлы, например, - то может накопиться довольно много такого мусора и он не будет очищен автоматически. | |
|
|
|
|
|
|
|
для: mazyakov
(29.05.2006 в 18:05)
| | Только если памяти скрипту не хватает - после редиректа (Location) - они будут уничтожены автоматически. | |
|
|
|