Вопрос

Я пытаюсь сделать более простую версию

$query1 = "SELECT $select FROM HelpDesk ORDER BY createdtime DESC LIMIT 100";
$records1 = $client->doQuery($query);
$query2 = "SELECT $select FROM HelpDesk ORDER BY createdtime DESC LIMIT 100,100";
$records2 = $client->doQuery($query2);
.

Что я хочу сделать, это запустить его, чтобы это было что-то вроде

$qnum = 1; qmax = 15; $offset = 100;
while (qnum < $qmax) {
$query# = "SELECT $select FROM Table ORDER BY Field DESC LIMIT 100,$offset";
$records# = $client->doQuery($query#);
}

$records = array_merge($records[]);
.

Теперь я знаю, что это ужасно, но я просто пытаюсь перебраться на то, что я пытаюсь сделать.

Я довольно новичок в массивах, и я знаю, что мне нужен или foreach там для смещения.Я просто не уверен, как это сделать.

Благодаря ChocoROC код, который теперь использую:

$query1 = "SELECT $select FROM HelpDesk ORDER BY createdtime DESC LIMIT 100";
$records1 = $client->doQuery($query1);
$records = array();
for ($i = 100; $i <= 1500; $i+=100 ) {
 $query      = "SELECT $select FROM HelpDesk ORDER BY createdtime DESC LIMIT 100,$i";
 $new_records = $client->doQuery($query);
 $records     = array_merge($records, $new_records);
}
$records     = array_merge($records, $records1);
.

Я устанавливал его изначально до $ i= 0, но казалось, что пропустить ряд или 3 (в зависимости от обновления).

Это было полезно?

Решение

Если вы сейчас, где вы начинаете, и где вы закончите, просто используйте петлю for:

$result = array();
for ($i = 100; $i <= 1500; $i+=100 ) {
    $query      = "SELECT $select FROM HelpDesk ORDER BY createdtime DESC LIMIT $i, 100";
    $new_result = $client->doQuery($query);
    $result     = array_merge($result, $new_result);
}
.

Осознайте смещение, это первый параметр в пределе.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top