仅为一个应用程序打开register_globals


Turn register_globals on for just one app

我们有一个客户端应用程序,它依赖于register_globals来工作,但我们将其托管在共享服务器上,并且不想在php.ini主文件中打开register_globals。

我尝试插入ini_set ( 'register_globals' , 'On' );,但没有成功。为什么没有?还有更好的方法吗?

您可以随时尝试放入:

 extract($_REQUEST,EXTR_SKIP); //thanks @Wayne Whitty

在每个文件的顶部。据我所知,它会喊出同样的结果。但真的,真的,使用这些是很糟糕的。我会想办法更改代码。但有时你别无选择。

来自php文档:

请注意,register_globals不能在运行时设置(ini_set())。尽管如此,如果您的主机允许,您可以使用.htaccess如上所述。示例.htaccess条目:php_flag register_globals关闭

register_globals 上php文档的链接

register_globals只能在php.ini中设置。ini_set不能在运行时设置您只能通过以下代码读取此设置:

ini_get('register_globals');