Php $\是否将函数中的全局作用域设置为非全局?

Php $\是否将函数中的全局作用域设置为非全局?,php,get,global-variables,Php,Get,Global Variables,我试图在函数中向$\u GET数组添加一些内容,但没有让它在函数之外向$\u GET添加该值。我真的不懂范围。是否有一种方法可以将作用域本地添加到函数中的$\u GET,让php知道我不想对数组进行全局更新 请协助 function url($toSort) { $_GET['sortby'] = "$toSort"; echo http_build_query($_GET); } ?> 因为$\u GET是一个超全局的,所以您不能在不影响全局的

我试图在函数中向$\u GET数组添加一些内容,但没有让它在函数之外向$\u GET添加该值。我真的不懂范围。是否有一种方法可以将作用域本地添加到函数中的$\u GET,让php知道我不想对数组进行全局更新

请协助

function url($toSort) {
        $_GET['sortby'] = "$toSort"; echo http_build_query($_GET);

        }
    ?>

因为$\u GET是一个超全局的,所以您不能在不影响全局的情况下更改它

但是,为什么不简单地在函数内部“使用”一个本地副本呢

function url($toSort) {
    $localGet = $_GET;
    $localGet['sortby'] = $toSort; 
    echo http_build_query($localGet);
}

如果您只需要该结果,还可以在此处使用表达式
http\u build\u query(数组(“sortby”=>$tosort)+$\u GET)
。$\u GLOBAL是超级全局变量,您不能将其设为本地变量谢谢。我仍在学习基础知识,这确实很有道理。