0

我正在getSignal()从另一个类调用一个公共静态函数,但是如何更改以其他方式硬编码到我正在调用的函数中的变量定义?

class moo{

  public static function $getSignal($alert) {
    $my_array = array_pop($this->blah->myFunction1()->bestFunction());
    $signals = $pop[$alert];
  }
}

现在在另一个文件中,我通过以下方式调用它:

return moo::getSignal($alert);

然而,问题是,我需要在$my_array课堂上moo稍微改变一下。它需要是:

$my_array = array_pop($this->cow->bestFunction());    

我怎样才能做到这一点??感谢任何帮助或见解。

4

2 回答 2

0

if you must change what you intend changing then you must make room for another parameter to getSignal() like this

class moo{

  public static function $getSignal($alert,array $arrayParam) {
    $my_array = array_pop($arrayParam);
    $signals = $pop[$alert];
  }
}
于 2013-09-13T02:33:22.093 回答
0

最干净的方法是$my_array作为参数传递给getSignal(),例如,该方法将更改为类似

public static function getSignal($alert, array $my_array) {
    $last = array_pop($my_array);
    $signals = $pop[$alert];
}

这是一个有点奇怪的例子,因为$my_array没有在函数体中使用。您还在$this静态上下文中使用。

假设可以访问所有相关成员,您可以在“其他”文件中调用它,如下所示:

return moo::getSignal($alert, $this->blah->myFunction1()->bestFunction());

并在moo课堂上:

return self::getSignal($alert, $this->cow->bestFunction());
于 2013-09-13T02:28:33.730 回答