2013-12-13 4 views
-1

Есть ли способ реализовать класс pagination в opencart без звонка в базу данных? Как я могу контролировать ограничение на продукты, отображаемые в представлении. Я пытаюсь разбивать на страницы длинный список продуктов, прежде чем они будут вставлены в базу данных из класса синтаксиса csv и импорта, который я написал для opencart. Код ниже - это то, что я пытаюсь обойти, это код из модели, ограничивающей продукты для представления, мне нужно сделать это с помощью массива, который выводит парсер csv.opencart pagination без базы данных

if (isset($data['start']) || isset($data['limit'])) { 
     if ($data['start'] < 0) { 
      $data['start'] = 0; 
     }    

     if ($data['limit'] < 1) { 
      $data['limit'] = 20; 
     } 

     $sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit']; 
    } 

любые идеи были бы очень признательны !! :-)

ответ

0

Вы ищете for цикла:

$demo_array = file('your_file.csv'); // load your csv 

$start = $data['start']; // e.g. 0 
$limit = $data['limit']; // e.g. 20 

for($i = $start; $i < $limit; $i++) { 
    // process this result using $i as the array key 
    // var_dump($demo_array[$i]); 
} 

Docs

+0

спасибо, теперь я просто реализовать его в пределах opencart. Для меня имеет смысл, что мне нужно делать сейчас, но у меня все еще есть способы пойти. Итак, мне нужно будет использовать этот цикл в представлении, чтобы ограничить вывод массива? – handmdmr

+0

Да, хотя в идеале вы должны использовать начальные и предельные параметры, чтобы указать, где вы начинаете, и прекратить чтение файла. Это было бы важно для вас, если бы ваш CSV-файл был большим, но этот метод является самым простым в краткосрочной перспективе. –

Смежные вопросы