从php中的另一个函数访问值

时间:2015-03-12 06:16:02

标签: php function scope

我有一个函数skipCopy:

public function skipCopy($skipcopy){
    $skipcopy1 = $skipcopy;
}

现在我希望在copy()函数中使用$ skipcopy1中的值,结构如下:

protected function copy($id, $srcip, $srcusername, $srcpassword, $tgtip, $tgtusername, $tgtpassword, $publish) {
     //use $skipcopy1 here. Do this without passing the value as parameter. as all the parameters in the copy function are mandatory.
 }

我怎样才能做到这一点。

这两个函数都是相同的PHP类。

5 个答案:

答案 0 :(得分:1)

您可以在其他答案中使用global关键字,或者将该变量定义为该类的成员,

protected $skipcopy;
public function skipCopy($skipcopy){
    $this->skipcopy = $skipcopy;
}
protected function copy($id, $srcip, $srcusername, $srcpassword, $tgtip, $tgtusername, $tgtpassword, $publish) {
   echo $this->skipcopy; //You can now access this variable.
 }

答案 1 :(得分:0)

将$ skipcopy1定义为copy()函数中的全局,如

global $skipcopy1;

答案 2 :(得分:0)

只需使用全局关键字或您可以反对存储值。使用以下代码

protected function copy($id, $srcip, $srcusername, $srcpassword, $tgtip, $tgtusername, $tgtpassword, $publish) {
global $skipcopy1;
 }

希望这有助于你

答案 3 :(得分:0)

public function skipCopy($skipcopy){
  global $skipcopy1;
  $skipcopy1 = $skipcopy;
}

protected function copy($id, $srcip, $srcusername, $srcpassword, $tgtip, $tgtusername, $tgtpassword, $publish) {
  global $skipcopy1;
  // use it
}

答案 4 :(得分:0)

在构造函数中声明此变量 喜欢

public function __construct(){
$this -> skipcopy1 = '';
}