1
PHP에서 많은 결과를 얻는 요청 (mysql)을 가지고 있으며 매력처럼 작동합니다. 다음은 나에게 (115 개) 결과를 제공하는 요청의 예입니다PHP with mysql SELECT LIMIT
public static function getInfo($start, $limit) {
$sql = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(
SELECT blablabla FROM blabla ORDER BY bla LIMIT $start,$limit
);
return $sql;
}
내 PHP 파일에서, 내가있어 : 여기
$rq = getInfo (0, 0);
$count_rq = (int)count($rq);
for ($i = 0; $i < $count_rq; ++$i) {
.... do my things ....
}
문제입니다 :이 구성에서, 단지 결과를 보여줍니다 42-1 ... 내가 일부 수정/테스트 작업을 수행 할 때
, 그것은 보여줍니다 이상한 결과 : 나는했습니다
Modification => for ($i = 42; $i < $count_rq; ++$i) {.......}
I got 0 result.
Modification => for ($i = 43; $i < $count_rq; ++$i) {.......}
I got results 43 from 115 !..
Modification => for ($i = 60; $i < $count_rq; ++$i) {.......}
I got results 60 from 115 !..
"LIMIT"를 수정하려고했지만 이해가 안됩니다. 수정/테스트를 수행 한 결과는 다음과 같습니다.
(i'm using for ($i = 0; $i < $count_rq; ++$i) {.......})
Modification => $rq = getInfo (0, 20);
I got results 1 to 20.
Modification => $rq = getInfo (0, 50);
I got results 1 to 42.
Modification => $rq = getInfo (10, 0);
I got results 1 to 42.
Modification => $rq = getInfo (10, 30);
I got results 11 to 40.
결과를 모두 표시 할 수 있는지 어떻게 알 수 있습니까? 요청에 115 개의 결과가 있거나 요청에 10 개의 결과가 나오면 115 개의 결과를 표시 할 수있는 코드를 원합니다. 어떻게해야합니까? 왜 처음 42 개의 결과로 제한됩니까?
정확히이 메소드'Db :: getInstance (_PS_USE_SQL_SLAVE _) -> ExecuteS'를 수행합니까? 그것은 * 및 * 모든 행을 가져 오는 쿼리를 실행합니까? –
답장을 보내 주셔서 감사합니다. Prestashop에서 가져온 것 같습니다 : "ExecuteS"는 쿼리를 실행하고 모든 결과를 다차원 배열로 되돌려줍니다. – Shark34
var_dump ($ rq);를 수행하면 어떻게됩니까? –