2013-03-15 144 views
-1

我有一个有两个函数的类,两个不同的AJAX请求发布$variable$anothervariablefunctionOnefunctionTwo。我需要能够在功能functionTwo在一个类中的函数之间传递PHP变量

class MyClass { 

    public static function functionOne($variable) { 



    } 

    public static function functionTwo($anothervariable) { 

     // I WANT TO USE $variable HERE 

    } 


} 

如何访问$variablefunctionTwo中使用的$variable价值?

+0

$ this-> functionOne($ Var);从里面functionTwo? – 2013-03-15 15:43:17

+1

这些函数是如何被调用的? – Jon 2013-03-15 15:44:18

+0

@DarylGill首先他的功能是静态的,所以他不能使用$ this,其次是调用functionOne如何让他访问$变量? – GGio 2013-03-15 16:15:16

回答

1

因为您的两个方法是静态的,你需要的功能之前,添加静态变量,并将其设置在functionOnefunctionTwo

class MyClass { 
    static $variable; 

    public static function functionOne($variable) { 
     self::variable = $variable; 
    } 

    public static function functionTwo($anothervariable) { 
     echo self::variable; 
    } 
} 
+0

在代码中我在这部分获得以下错误'self :: variable = $ variable;' 在MyClass中找不到常量变量 – james 2013-03-15 16:16:33

0
class MyClass { 

    function foo($aString) { 

     $this->val = $aString; 

    } 

    function bar() { 

     echo $this->val; 

    } 

} 

$test = new MyClass(); 
$test->foo('test'); 
$test->bar(); 

输出使用它:

'test' 
+0

定义了$ this-> val'的位置? – Chris 2013-03-15 15:48:05

+0

这不是也不需要。你可以在'class MyClass {'和'function foo($ aString){'之间添加声明',如果你希望在使用它们之前定义它们(一个好主意) – zajd 2013-03-15 15:49:33

+0

他的函数是静态的,所以你不能改变' $ this-> val' – andrewtweber 2013-03-15 15:56:14