2013-09-23 73 views
0

如果未指定限制,Solarium(和solr)将默认返回10个结果。我知道我可以使用$ query-> setRows(25)指定一个限制;但我需要返回所有结果(不管多大)。有没有一种方法可以在不传入大量setRows()的情况下指定它?我没有看到文档中的任何内容.......使用Solarium返回所有结果-PHP

回答

0

下面是一些可能会启发和实际上维基解答这个问题。根据文档,使用大数来获取行可能会更好。

here

我怎样才能得到所有匹配的文件回来? ...我如何返回无限数量的行?

在大多数情况下这是不切实际的。人们通常只想在知道自己正在处理索引的时候这么做,因为索引的大小可以确保结果集总是足够小,从而可以以可管理的数量进行传输 - 但是如果是这种情况,只需说明您的考虑事项一个“可管理的数量”作为你的行参数并获得两全其美(当你的假设是正确的时候,所有的结果,如果你的假设是错误的,结果大小的理性上限)

此外,这是什么setRows的文档中提到here

该参数用于分页从查询结果。它指定完整结果集中每个请求返回客户端的最大文档数量。您可以将其视为页面中显示的最大结果数量。

默认值为“10”,如果未指定该参数,则使用该值。如果您想告诉Solr从没有上限的查询中返回所有可能的结果,请将行指定为10000000或其他某个比可能的预期行数更大的可笑的大值。

有关于这here

+0

看到我的答案为日光浴室开发者的建议... – 4shcr4ft