alestro
@alestro

Вывод результатов поиска из индекса или из базы?

Осуществляю поиск по сайту при помощи sphinx'а, ищу в индексе со всеми продуктами, потом вытаскиваю информацию из индекса в двумерный массив следующим образом:
public function search_query($sql){
		$result = $this->query($sql);
		while ($row = mysqli_fetch_assoc($result)) {
			$search_array[] = $row;
		}
		return $search_array;
	}

После чего вывожу все это дело циклом:
for( $i = 0; $i < count($search_array); $i++){ echo $search_array[$i]['id']; }

Вопрос состоит в следующем:
Насколько эффективен такой способ и не лучше было бы помещать в массив только id записей и в цикле вытаскивать из базы все продукты по id.
И если нет, то как организовать пагинацию по массиву?
Вопрос решен.
  • Вопрос задан
  • 272 просмотра
Пригласить эксперта
Ответы на вопрос 1
@asperin2
PHP разработчик
Единственное foreach будет и побыстрее и смотрится как-то получше. А так... лучше один запрос к базе, чем сотни.
В чем проблема с пагинацией, у вас же есть идекс, самый простой способ проерять
$page = 20;
if ($i%$page == 0) {
Новая страница
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы