我是 Laravel 的初学者,我正在尝试将现有项目(在本机 php 中)移动到 Laravel 框架。到目前为止,一切都运行良好,除了我试图从我的助手类执行静态函数的部分。我得到了一个叫做 old.php 的视图,它看起来像这样:$my_global_var = 'Hello';class TestClass { public static function foo(){ global $my_global_var; return $my_global_var; }}dd(TestClass::foo());而不是像以前那样返回“Hello”,null而是该函数返回。我知道我可以只$my_global_var作为参数传递,但正如我之前提到的,我试图将现有项目移至 Laravel。并且该项目充满了像 TestClass 这样的辅助类,它们在开始时(或自动加载)包含在内,然后在整个程序中使用。我的问题是:我是否必须重写我所有的助手类,或者有没有办法让我保持这global $my_global_var;条线?
2 回答
炎炎设计
TA贡献1808条经验 获得超4个赞
global $my_global_var; // Here is your answer
$my_global_var = 'Hello';
class TestClass {
public static function foo(){
global $my_global_var;
return $my_global_var;
}
}
dd(TestClass::foo());
慕丝7291255
TA贡献1859条经验 获得超6个赞
在您的示例中,您可以$my_global_var使用$GLOBALS[]访问您的函数中的。更多信息在这里。
例子:
$my_global_var = 'Hello';
class TestClass {
public static function foo(){
return $GLOBALS['my_global_var'];
}
}
dd(TestClass::foo());
- 2 回答
- 0 关注
- 159 浏览
添加回答
举报
0/150
提交
取消