나는이 질문이 해킹되고 이상하다고 생각하지만 PHP에서 런타임에 함수를 제거하는 방법이 있습니까?PHP에서 런타임에 함수 제거
"if"블록에 선언 된 재귀 함수가 있고 "if"블록에서만 해당 함수가 "유효"하도록하고 싶습니다. 나는이 블록 밖에서이 함수를 호출하지 않기를 바란다.
runkit_function_remove을 찾았지만 웹 호스트에서 runkit을 사용할 수 없습니다. 거기에 또 다른 방법이 있을까요?
나는 PHP 5.1.0 만 지원합니다.
편집 : 내 질문은 해키했지만, 여기에 내가 원하는 정확한 일을 알고 : 매직 지수가 ON 일 때
if (function_exists('get_magic_quotes_gpc') && @get_magic_quotes_gpc())
{
function stripslashes_deep($value)
{
return is_array($value) ? array_map('stripslashes_deep', $value) : stripslashes($value);
}
$_POST = array_map('stripslashes_deep', $_POST);
$_GET = array_map('stripslashes_deep', $_GET);
$_COOKIE = array_map('stripslashes_deep', $_COOKIE);
$_REQUEST = array_map('stripslashes_deep', $_REQUEST);
//runkit_function_remove('stripslashes_deep');
}
"stripslashes_deep"때문에 것입니다, 나는 싶었에만 라이브 내가 끝내면 그걸 없애 버려. 사람들이 항상 이 아닌 기능에 의존하기를 원하지 않습니다.. 나는 그것이 지금 더 분명하기를 바란다. 비 해킹 된 솔루션 제안도 환영합니다!
** 단순히 전화하지 못하는 이유는 무엇입니까 **? –
무엇을 부르지 않습니까? – AlexV
조심하세요! 배열 키는 마법 따옴표로 깎입니다. –