Как бы я сделал что-то вроде этого:
class Test
{
public function test($methodName) {
$this->$methodName;
}
private function a() {
echo("a");
}
private function b() {
echo("b");
}
}
$testObj = new Test();
$testObj->test("a()");
$testObj->test("b()");
Может быть, я должен просто передать параметр "ТИП" и использовать "оператор IF", но мне просто любопытно! :)
А что если «имя динамической функции» имеет один или несколько параметров?
ОБНОВЛЕНИЕ: Спасибо всем! :)
ОБНОВЛЕНИЕ № 2 - Ответ:
class Test
{
public function testOut($methodName) {
$this->$methodName();
}
private function a() {
echo("a");
}
private function b() {
echo("b");
}
}
$testObj = new Test();
$testObj->testOut("a");
$testObj->testOut("b");
Проблема с классом заключается в том, что был метод с именем «Test» (такой же, как имя класса) ... Я изменил его, и он работал.