我有这样的代码:
<?
$a="localhost";
function body(){
global $a;
echo $a;
}
function head(){
global $a;
echo $a;
}
function footer(){
global $a;
echo $a;
}
?>
有什么方法可以在一处定义全局变量并使$a
所有函数一次访问该变量?不利用global $a;
更多?
该$GLOBALS
数组可以代替使用:
$GLOBALS['a'] = 'localhost';
function body(){
echo $GLOBALS['a'];
}
从手册:
包含对所有变量的引用的关联数组,这些变量当前在脚本的全局范围内定义。变量名是数组的键。
如果您有一组需要一些公共变量的函数,那么带有属性的类可能是一个不错的选择,而不是全局的:
class MyTest
{
protected $a;
public function __construct($a)
{
$this->a = $a;
}
public function head()
{
echo $this->a;
}
public function footer()
{
echo $this->a;
}
}
$a = 'localhost';
$obj = new MyTest($a);
问题内容: 如何在JavaScript中声明全局变量? 问题答案: 如果必须在生产代码中生成全局变量(应避免使用),请 始终 明确 声明它们: 虽然可以通过省略来定义全局变量(假设没有同名的局部变量),但这样做会生成 隐式 全局,这是一件不好的事情,并且在 严格模式下 会产生错误。
我在typescript中声明了一个全局变量,类似于:global。test=“something”我尝试这样做,我得到错误属性“test”在类型“Global”上不存在。
问题内容: 我在一个组件(在应用程序中加载的第一个组件)中初始化了翻译对象。所有其他组件都需要相同的对象。我不想在每个组件中重新初始化它。怎么回事?使它可用于窗口范围并没有帮助,因为我需要在方法中使用它。 请提出针对这些问题的通用解决方案,而不是针对国际的解决方案。 问题答案: 为什么不尝试使用Context? 您可以在任何父组件中声明一个全局上下文变量,并且可以在组件树中通过来访问此变量。您只需
问题内容: 我正在创建一个需要登录的应用程序。我创建了main和login活动。 在主要活动onCreate方法中,我添加了以下条件: onActivityResult登录表单终止时执行的方法如下所示: 问题是登录表单有时会出现两次(该login()方法被调用两次),而且当电话键盘滑动时,登录表单也会再次出现,我想问题是出在变量上strSessionString。 有谁知道如何设置全局变量以避免在
问题内容: 我想制作一个可以在整个应用程序中访问的自定义对象的全局数组(AppDelegate,ViewController类,TableViewController类等)。我已经研究了一种解决方法,但没有找到答案。我曾尝试将数组设置为公共范围,但是收到了编译器警告,提示当我尝试在其他文件中访问该数组时,出现错误提示 我将如何使该数组可被应用程序中的所有文件全局访问,我将在哪里实例化该数组? 问题
问题内容: 我需要所有文件中都需要的一些全局变量。 例如,考虑以下4个文件: 考虑到我将上述所有4个文件都加载到HTML文档中,有没有一种方法可以在其中声明3个全局变量并在其他3个文件中的任何一个中访问它们? 有人可以告诉我是否可行,还是可以解决这个问题? 问题答案: 只需在函数范围之外的global.js中定义变量: 为确保此方法有效,您必须先包含/链接到global.js,然后再尝试访问该文件