Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用拆分数组拆分表列_Php_Mysql - Fatal编程技术网

Php 如何使用拆分数组拆分表列

Php 如何使用拆分数组拆分表列,php,mysql,Php,Mysql,我目前正在寻找一种方法来分割一个数据库发送消息后60分钟左右。我有一个表,其中有1000多行是从数据库返回的,我想将它们分成50个组。我希望能举个例子说明如何做到这一点。谢谢。您可以创建一个导航到以下位置的脚本: runner.php?start=0&limit=50 此页面将从第0行开始,重复50次。然后,在重复50次之后,它会发出回声: <script>setTimeout(function() { window.location='runner.php?start=50

我目前正在寻找一种方法来分割一个数据库发送消息后60分钟左右。我有一个表,其中有1000多行是从数据库返回的,我想将它们分成50个组。我希望能举个例子说明如何做到这一点。谢谢。

您可以创建一个导航到以下位置的脚本:

runner.php?start=0&limit=50

此页面将从第0行开始,重复50次。然后,在重复50次之后,它会发出回声:

<script>setTimeout(function() {
    window.location='runner.php?start=50&limit=50';
}, 3600000)</script>
setTimeout(函数(){
window.location='runner.php?start=50&limit=50';
}, 3600000)
其中
start=50
将是
$\u GET['start']+$\u GET['limit']


不过,您需要保持浏览器窗口处于打开状态。

您可以使用
array\u chunk

$chunks = array_chunk($results, 50);
foreach ($chunks as $i => $chunk) {
    if ($i != 0) {
        sleep(3600); // Pause an hour except at the beginning
    }
    foreach ($chunk as $row) {
        // Do what you want with the row
    }
}
不要在网页上执行此操作,因为浏览器将在等待结果时超时。但您可以在CLI脚本中执行此操作