PHP:全局变量范围

Ric*_*ick 0 php

我有一个单独的文件,其中包含其设置值的变量.如何将这些变量设为全局变量?

防爆.我$myvalvalues.php文件中有值.在index.php我调用一个需要该$myval值的函数.

如果我include(values.php);在index.php文件的beggining中添加它会丢失函数内的范围.我将在index.php文件中的多个函数中调用相同的变量.

Mic*_*ski 7

在函数内部中,使用global关键字或从访问变量$GLOBALS[]数组:

function myfunc() {
  global $myvar;
}
Run Code Online (Sandbox Code Playgroud)

或者,为了更好的可读性:使用$GLOBALS[].这清楚地表明您正在访问全局范围内的某些内容.

function myfunc() {
  echo $GLOBALS['myvar'];
}
Run Code Online (Sandbox Code Playgroud)

最后,

尽可能避免使用全局变量开始,而是将其作为参数传递给函数:

function myfunc($myvar) {
  echo $myvar . " (in a function)";
}

$myvar = "I'm global!";
myfunc($myvar);
// I'm global! (in a function)
Run Code Online (Sandbox Code Playgroud)