Как мне остановить цикл PHP foreach через 10 секунд на 5 секунд, а затем запустить его снова с того места, где он останоPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как мне остановить цикл PHP foreach через 10 секунд на 5 секунд, а затем запустить его снова с того места, где он остано

Сообщение Anonymous »

У меня есть функция php с циклом foreach, которая вставляет данные в базу данных, у меня большой размер данных, превышающий 1,5 миллиона строк, и это приводит к остановке процесса из-за ограничений сервера.Я постараюсь упростить процесс:
Я хочу запустить процесс на первые 10 секунд, затем остановить его на 5 секунд, завершить процесс через 5 секунд, запустить снова на 10 секунд, остановка еще на 5 секунд и так далее, пока все данные не будут введены.
Я пытаюсь добавить Sleep(10), как указано в ответах на этот вопрос, но это не работает: Php, подождите 5 секунд перед выполнением действия
Пример моей функции:

Код: Выделить всё

function importDatabaseTables($dbHost, $dbUname, $dbPass, $dbName, $filePath){
// Connect & select the database
$db = new mysqli($dbHost, $dbUname, $dbPass, $dbName);

// Temporary variable, used to store current query
$templine = '';

// Read in entire file
$lines = file($filePath);

$error = '';

// Loop through each line
foreach ($lines as $line){
// Skip it if it's a comment
if(substr($line, 0, 2) == '--' || $line == ''){
continue;
}

// Add this line to the current segment
$templine .= $line;

// If it has a semicolon at the end, it's the end of the query
if (substr(trim($line), -1, 1) == ';'){
// Perform the query
if(!$db->query($templine)){
$error .= 'Error importing query "' . $templine . '[/b]": ' . $db->error . '

';
}

// Reset temp variable to empty
$templine = '';
}

}
return !empty($error)?$error:true;
}

Подробнее здесь: https://stackoverflow.com/questions/791 ... then-start
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»