PHP分在类方法中使用全局变量

时间:2013-09-03 22:18:12

标签: php class oop variables global-variables

我正在尝试让$var1处理许多不同的方法

var1是来自包含网址

的数组的extract()的结果

exp:

$ url ='localhost / site / className / edit / 254 /...;;

$ arr [var1] ='edit';

$ arr [var2] ='254';

$var1 = 'something';

class myClass{
    function doSomething(){
        echo $var1;
    }
}

$obj = new myClass();
$obj->doSomething();

输出:

注意:未定义的变量:var1 in ....

有没有办法解决它?

1 个答案:

答案 0 :(得分:2)

2种解决方法:

首先,最好的 - 传递变量作为函数参数:

$var1 = 'something';

class myClass{
    function doSomething($var){
        echo $var;
    }
}

$obj = new myClass(); //You could also pass it to constructor
$obj->doSomething($var1);

第二,工作,但被认为是不良做法

$var1 = 'something';

class myClass{
    function doSomething(){
        global $var1 ;
        echo $var1;
    }
}

$obj = new myClass();
$obj->doSomething();