如何在模板页面中设置全局变量?

时间:2014-06-04 作者:Jows

我知道这有用
英寸functions.php 执行:

$variable = "value";
并且在header.php 使用:

global $variable;
echo $variable;
是否可以在模板页面中设置全局变量或包含php文件?

1 个回复
最合适的回答,由SO网友:MortalViews 整理而成

在脚本中的任何位置,都可以定义全局变量,如下所示:

使用超全局$GLOBALS 大堆该数组由PHP预定义,并且is available in all scopes.

它是一个关联数组,包含作为键值对的所有全局变量。ie:键将是变量名,值将是变量的值。

$GLOBALS[\'variablename\'] = \'variablevalue\';
可通过以下方式访问:

$variable = $GLOBALS[\'variablename\'];

global $variable;
要了解更多参考:PHP Variable Scope

EDIT: 在回答时,我假设用户知道方法2,但在重读时,他似乎不知道,所以我在下面提到它。

方法2:

您还可以使用“global”关键字定义全局变量。eg代码:

//文件1。php

class testScope()
{
   function setMsg($msg = \'Hi\')
  {
    //the variable need not be already defined in the global scope. 
   global $say;
   $say = \'Hi\';
  }

  function say()
  {
    global $say;
    echo $say;
  } 
}

//file2.php 

function getFile1()
{
  include(\'file1.php\');
}

getFile1();

$sayer = new testScope();

$sayer->setMsg(); // this will create a new global variable. 
$sayer->say();
global $say; 
echo $say; 

$say = "I changed it in global scope";

$sayer->say(); // \'I changed it in global scope\'

$sayer->set(\'i changed it inside class\');
echo $say; // \' i changed it inside class\'

Note: The code is untested

结束

相关推荐

jquery issue in functions.php

我正在处理的主题中有一个问题,我不知道如何解决它。该主题有几个jquery脚本,需要加载到头部才能工作。如果没有所有这些,主题就失败了。这是我打电话给的人jquery-1.8.2。最小jsjquery-1.6.1。min.jsjquery。放松。1.3。jsjquery-ui-1.8.11。风俗min.jsjquery-ui-1.8.21。风俗最小js现在使用WordPress,我想您可以将jquery排队,然后加载所有版本。我的问题是,当我尝试这样做并删除上面的脚本时,一切都失败了。我将所有脚本放入函数