mitaichik
@mitaichik

Как передать ссылку на метод?

Подскажите, можно ли в. PHP передать ссылку на метод объекта как аргумент в функции?

Что то типа такого:

class Converter {
  public function convertDate($date) {
    ....
  }
}

function convert($rawData, callable $convertMethod) {
  return $convertMethod($rawData);
}

// Использование

$converter = new Converter;

$data = convert($rawData, $converter::convertDate)
  • Вопрос задан
  • 459 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
call_user_func не то?
class cat {
	function say() {
		echo 'meow' . PHP_EOL;
	}
}

class dog {
	function say() {
		echo 'woof' . PHP_EOL;
	}
}

call_user_func([dog, 'say']);
call_user_func(dog . '::say');

$cat = new cat();
call_user_func([$cat, 'say']);

https://ideone.com/qh84WU
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы