2016-09-16 11 views
0

クラス変数を関数パラメータとしてどのように使用できますか?Phpクラス関数パラメータとしての変数

例:

class Test { 

    protected $img = ''; 

    protected function foo($var = $this->img) 
    { 
     ... some code ... 
    } 

} 

したがって、この良い習慣がありますか?

+1

このようにすることができます。 '$ this-> img'を使わない場合は何かをテストしてください。 –

+0

'$ this'はクラスからインスタンス化された現在のオブジェクトを参照するため、' new Test() 'が呼び出されました。 'protected function foo($ var = self :: IMG){...}'でもデフォルトデータのクラス定数を使うことができます。 – CD001

+2

デフォルトの引数値として変数を持つことはできません – Neat

答えて

1

私は100%確信していませんが、私はあなたがすることはできません。

class Test { 

    protected $img = ''; 

    protected function foo($var = null) 
    { 

     if(is_null($var)) 
      $var = $this->img; 

     ... some code ... 
    } 

} 
+0

ありがとうございます。 – utdev

関連する問題