У меня есть простая функция1, которая отправляет http-запрос в API Google и возвращает результат $.
Затем у меня есть другая функция2, которая, если $ result isset, должна использовать $ result для выполнения некоторых вычислений, а затем вернуть $ finalresult. .
Моя проблема в том, что вызов API Google занимает пару секунд, и к тому времени, когда function1 вернет $ result, function2 уже вернула $ finalresult без учета результата $.
Что я хочу сделать, так это полностью запустить функцию 1 и вернуть $ result до того, как функция 2 даже начнется.
Предпочтительно, я ищу решение, которое не просто использует «sleep ()», так как эта функция не гарантирует, что $ result действительно будет возвращен. (Если не существует какого-либо способа зациклить сон (1) до тех пор, пока $ return isset или что-то в этом роде)
Пример кода для визуальных девушек и парней
function1_geocode($address); // this function makes a http request to google and returns $result
function2_proximitysearch(){
if (isset($result)){
//inevitably by the time the script gets there, $result hasn't been returned yet therefore none of the "some stuff" code is executed.
//some stuff
}
else {
//some other stuff
}
}