Я хотел бы реализовать что-то похожее на метод делегата С# в PHP. Быстрое объяснение того, что я пытаюсь сделать в целом: я пытаюсь реализовать некоторые асинхронные функции. В основном некоторые ресурсоемкие вызовы, которые попадают в очередь, кэшируются и отправляются, когда базовая система приближается к ней. Когда асинхронный вызов, наконец, получит ответ, я бы хотел, чтобы событие обратного вызова было поднято.
У меня возникли проблемы с механизмом выполнения обратных вызовов в PHP. Я придумал метод, который работает сейчас, но я недоволен этим. В основном это включает передачу ссылки на объект и имя метода на нем, который будет служить в качестве обратного вызова (принимая ответ в качестве аргумента), а затем использовать eval для вызова метода, когда это необходимо. Это неоптимально по целому ряду причин, есть ли лучший способ сделать это, о котором все знают?