使用redbeanphp进行分页的最佳方法?

使用redbeanphp进行分页的最佳方法?,php,pagination,redbean,Php,Pagination,Redbean,我最近开始使用它,不喜欢我的方式。需要建议 我举了一个类似的例子: $all=R::findAll(‘针’, “按所有权限制排序2”) 首先,这对分页没有任何作用。您需要向服务器传递一个页面,并且可能要对其进行分页。除此之外,你做得对 $page=1; $limit=10; $all=R::findAll('needle','ORDER BY title LIMIT '.(($page-1)*$limit).', '.$limit); 您的另一个选项是选择所有记录,然后只返回用户要查看的部分,

我最近开始使用它,不喜欢我的方式。需要建议

我举了一个类似的例子:

$all=R::findAll(‘针’,
“按所有权限制排序2”)

首先,这对分页没有任何作用。您需要向服务器传递一个页面,并且可能要对其进行分页。除此之外,你做得对

$page=1;
$limit=10;
$all=R::findAll('needle','ORDER BY title LIMIT '.(($page-1)*$limit).', '.$limit);
您的另一个选项是选择所有记录,然后只返回用户要查看的部分,但如果您有数千条记录,这是一个坏主意:

$needles=R::findAll('needle', 'ORDER BY title');
$page=1;
$limit=10;
$all=array_slice($needles,(($page-1)*$limit),$limit,true);
要查找总页数,请执行以下操作:

$needles=R::count('needle');
$totalPages=ceil($needles/$limit);

我认为建议的解决方案是可以的,但您应该使用参数绑定,否则可能会导致SQL注入:

$page=1;
$limit=10;
$all=R::findAll('needle',
'ORDER BY title LIMIT ?,? ',array((($page-1)*$limit),$limit));

最好使用像这样的PHP包


因为它还将为您提供HTML小部件,以便在底部创建分页链接;除了构建SQL的助手之外。

还值得一提的是,这是RedbeanPHP库的作者