使用ThinkPHP,却发现无法使用->order($order)来排序。
$order = " info.date2 desc ";
很遗憾的是这样写结果order却变成了 order by date2 limit ... desc不见了。
解决办法一:
$order 里面两边不能有任何空格,$order = "info.date2 desc";(正确)。$order = " info.date2 desc";(错误!)
解决办法二:
打开文件:D:\WebSite\Zbphp.com\www\ThinkPHP\Extend\Model\ViewModel.class.php
修改第136行,改成 $array = explode(' ', trim($order));加上trim 保存即可,如图所示:
推荐使用第二种方法,不过期待thinkphp官网可以修正这个小问题,免得用户自己修改内核代码。by default7#zbphp.com
本文介绍了在使用ThinkPHP框架时遇到的排序问题及两种解决方案。一种是确保$order变量中没有空格,另一种是修改框架核心代码以支持正确的排序语法。
887

被折叠的 条评论
为什么被折叠?



