Задать вопрос
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)
  • Вопрос задан
  • 495 просмотров
Подписаться 3 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 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
Ваш ответ на вопрос

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

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