2014-11-28 40 views
5

czy można ustawić domyślną wartość argumentu w funkcji klasy jako zmienną statyczną dzięki za pomoc w Advance!PHP SET domyślny argument w funkcji jako zmienna statyczna

class UserControl { 

    public static $CurrentUID; 

    public static function isUserExist($CurrentUID = UserControl::$CurrentUID){ 

    .... 

    } 
} 
+1

To nie jest możliwe, jak powiedział w dokumentacji [php] (http://php.net/manual/en/functions.arguments. php # functions.arguments.default), 'Domyślna wartość musi być stałym wyrażeniem, a nie (na przykład) zmienną, członkiem klasy lub wywołaniem funkcji." –

+0

ahh ... oczywiście tworzy tylko łańcuchy znaków –

Odpowiedz

4

Można zrobić obejście w tym przypadku:

public static function isUserExist($CurrentUID = false) 
{ 
    if(!$CurrentUID) 
     $CurrentUID = UserControl::$CurrentUID; 
    .... 
}