PHP / Laravel: запускать функцию до тех пор, пока что-то случится - PullRequest
0 голосов
/ 05 февраля 2019

Не уверен, что я ищу, может быть, кто-то может указать мне правильное направление.Я должен запустить некоторую часть кода после того, как какой-то файл был загружен в папку.Это означает, что пользователь, нажав кнопку Загрузить, запускает function(1), который сохраняет файл на диск.Пока файл загружен, запускается еще один function(2), который работает с этим файлом.

Я думал связать function(2) с кнопкой загрузки, с некоторой задержкой или проверкой, если файл загружен.

Как это можно реализовать?Какой метод использовать?Есть идеи?

1 Ответ

0 голосов
/ 05 февраля 2019

Слушатели событий кажутся хорошим примером использования здесь.Когда function(1) завершено, он может генерировать событие FileUploaded, и function(2) может вызываться из прослушивателя, зарегистрированного для события FileUploaded.

Прослушиватели событий также могут быть поставлены в очередь, если они долго работаютзадачи, чтобы не заставлять запрос на загрузку ждать до тех пор, пока function(2) не будет выполнен перед возвратом ответа.

В зависимости от вашего варианта использования, вы также можете просто поставить в очередь задание на function(2) в конце function(1).Слушатели событий позволят вам отделить function(1) от function(2).

...