Я пытаюсь перебрать всех пользователей и вызвать функцию для каждого имени пользователя из таблицы учетных записей, которую я имею в базе данных MySQL.
Сначала я попытался:
$result = mysqli_query($mysqli, "SELECT username FROM accounts");
while ($row = $result->fetch_assoc()) {
try {
getFollowerData($row["username"], $mysqli, $ig);
} catch (Exception $e) {
echo "$e \n";
}
}
Но это заняло слишком много памяти, так как у меня в таблице более 4 миллионов записей.
Поэтому я попытался:
$result = mysqli_query($mysqli, "SELECT username FROM accounts", MYSQLI_USE_RESULT);
while ($row = $result->fetch_assoc()) {
try {
getFollowerData($row["username"], $mysqli, $ig);
} catch (Exception $e) {
echo "$e \n";
}
}
Однако, когда я делаю это, я получаю:
error: Commands out of sync; you can't run this command now
, потому что у меня есть строка:
$result = mysqli_query($mysqli, $insertFollowerData);
в моей функции getFollowerData (), что означает, что я пытаюсь сделать запрос SQL, в то время как я все еще делаю первый запрос, чтобы получить все имена пользователейиз аккаунтов.
Есть ли способ сделать эти запросы одновременно?