php-在Codeigniter中过滤,排序和分页
作者:互联网
当我在寻找一个非常轻量级的框架时,Ive最近开始使用CodeIgniter,它似乎是首选.
我是整个MVC的新手,很喜欢它,但是被一些看起来很简单的东西所困扰.
我正在编写CMS,需要一种过滤,排序和分页结果的方法.我习惯使用querystrings来做到这一点,所以我会有类似的东西:
articles.php?order=title&sort=desc&filter=articletitle&page=5
我不知道如何在CI中执行此操作,因此我只是在配置中打开了EnableQueryStrings,它工作正常,但是我感觉到它可能不是最优雅的解决方案.
我想我可以
index.php/articles/index/order/title/sort/desc/filter/articletitle/page/5
但是对我来说,这似乎很不灵活,例如,如果我不需要排序,该如何确保我正在寻找正确的uri细分呢?
有任何想法吗?
解决方法:
您是否尝试实现_remap函数?它将所有查询重定向到该功能的控制器,使您可以根据需要实现任意数量的查询.
然后,您可以执行以下操作:
class Articles extends Controller
{
// Note: No need for a "order" or even an "index" function!
public function _remap()
{
$assoc = $this->uri->uri_to_assoc( 4 );
/* $assoc is now
array( "order"=>"title",
"sort"=>"desc",
"filter"=>"articletitle",
"page"=>5); */
}
}
标签:codeigniter,query-string,php,content-management-system 来源: https://codeday.me/bug/20191024/1918560.html