Вызов класса / метода переменной программно - PullRequest
0 голосов
/ 26 января 2010

У меня есть метод в переменной с именем class, который мне нужно вызывать динамически, как я могу вызвать это:

$foo = "object" 

Где объект - это определенный класс

Как я могу назвать это в PHP?

$foo::method()

Ответы [ 2 ]

0 голосов
/ 26 января 2010
0 голосов
/ 26 января 2010

Формулировка вопроса сбивает с толку, но насколько я понимаю, если вы хотите установить $foo для определенного класса, давайте назовем его Foo, вы можете сделать это:

$foo = new Foo;

Вот наш класс Foo

class Foo {
  public $aMemberVar = 'aMemberVar Member Variable';
  public $aFuncName = 'aMemberFunc';   

  function aMemberFunc() {
     print 'Inside `aMemberFunc()`';
    }
 }

Если вы хотите получить доступ к переменной класса Foo и установить ее для переменной, вы можете сделать это:

 $myVar = 'aMemberVar';
 print $foo->$myVar //prints "aMemberVar Member Variable"

Также для пояснения $foo::method() подразумевает, что $foo является статическим классом, и статические классы не могут быть созданы, но они могут вызывать его метод класса method() с помощью оператора разрешения области действия (::)

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...