php新手问题:web的全局变量

Fux*_*uxi 1 php global-variables

我想设置一些全局变量来存储几件事.我试过这样的:

function init_web()
{
    $webname = "myweb";
    $web['webname'] = $webname;
    $web['server_root'] = $_SERVER['DOCUMENT_ROOT']."/$webname/"; 
    $web['lang']="en";
}
Run Code Online (Sandbox Code Playgroud)

问题是我无法访问函数内部的那些变量..我尝试过使用global $web;但没有帮助.

让它全球化的诀窍是什么?

谢谢

Mar*_*c B 5

虽然你会得到通常的"全局变量是坏的"哭,但这里是基础知识:

$web = array(); // define the var at the "top level" of the code tree, outside any functions/classes.
function init_web() {
    global $web; // make it visible in the function
    $web['lang'] = 'en'; // make some settings
}
Run Code Online (Sandbox Code Playgroud)

基本上,你有它,但没有在函数外定义变量.只是在函数中说"全局"不会在函数外部神奇地创建一个函数 - 在尝试将其"内化"到函数并更改/访问其内容之前,它必须存在.