加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在PHP 5.4或更高版本中模拟register_globals?

发布时间:2021-07-06 05:25:22 所属栏目:大数据 来源: https://www.jb51.cc
导读:我正在使用register_globals的框架.我的本地PHP版本是5.4. 我知道自PHP 5.3.0以来已弃用register_globals并在PHP 5.4中删除了,但我必须使这段代码在PHP 5.4上运行. 有没有办法在较新版本的PHP上模拟功能? 解决方法: 您可以在全局scope中使用extract来模拟re

我正在使用register_globals的框架.我的本地PHP版本是5.4.

我知道自PHP 5.3.0以来已弃用register_globals并在PHP 5.4中删除了,但我必须使这段代码在PHP 5.4上运行.

有没有办法在较新版本的PHP上模拟功能?

解决方法:

您可以在全局scope中使用extract来模拟register_globals:

extract($_REQUEST);

或者使用global和variable variables将其置于独立功能

function globaling()
{
    foreach ($_REQUEST as $key => $val)
    {
        global ${$key};
        ${$key} = $val;
    }
}

如果您有已发布的应用程序并且不想更改其中的任何内容,则可以使用创建globals.PHP文件

<?PHP
extract($_REQUEST);

然后将auto_prepend_file指令添加到.htaccess(或在PHP.ini中)

PHP_value auto_prepend_file ./globals.PHP

在此之后,代码将在每次调用时运行,并且应用程序将像旧设置生效一样工作.

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读