我需要在类的大多数函数中访问外部php文件的一些变量.我正在以下列方式访问(它工作正常)
class test{
function a(){
global $myglobalvar ;
..
..
}
function b(){
global $myglobalvar ;
..
..
}
function c(){
global $myglobalvar ;
..
..
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法可以在类的所有函数中访问$ myglobalvar而不在每个函数中声明?我确实读过它可以通过在类的构造函数中只声明一次来完成,但我不知道该怎么做.谢谢你的帮助.
Pri*_*ner 14
class test{
private $myglobalvar;
public function __construct($var){
$this->myglobalvar = $var;
}
function a(){
echo $this->myglobalvar;
}
function b(){
echo $this->myglobalvar;
}
function c(){
echo $this->myglobalvar;
}
}
$test = new test("something");
$test->a(); // echos something
$test->b(); // echos something
$test->c(); // echos something
Run Code Online (Sandbox Code Playgroud)
您可以在构造函数中创建对全局变量的引用(很像global):
class test{
function __construct() {
$this->myglobalvar = & $GLOBALS["myglobalvar"];
Run Code Online (Sandbox Code Playgroud)
然后允许$this->myglobalvar在每个方法中访问全局通过。