内容读取函数设计思路 从以前开始一直在研 - Assbbs

内容读取函数设计思路 从以前开始一直在研究内容读取方案,因为我对代码的要求主要有: 简洁(以最少的代码量实现) 高效(SQL读取效率一定要好) 所以经给不少次改进,最后写出的代码大致是这样的: function faptopic $mode,$val,$tsort,$tid,$qty { global $pdo; return …

内容读取函数设计思路 从以前开始一直在研究内容读取方案,因为我对代码的要求主要有: 简洁(以最少的代码量实现) 高效(SQL读取效率一定要好) 所以经给不少次改进,最后写出的代码大致是这样的: function faptopic $mode,$val,$tsort,$tid,$qty { global $pdo; return $pdo->query & 39;SELECT   FROM  topic  WHERE & 39;. $mode?& 39; & 39;.$mode.& 39; =& 39;.$val.& 39; AND& 39;:& 39;& 39; .& 39;  sort  IN  & 39;.$tsort.& 39;  AND  tid  & 39;. $qty?& 39;<= & 39;.$tid.& 39; ORDER BY  tid  DESC LIMIT & 39;.$qty:& 39;IN  & 39;.$tid.& 39; & 39; ->fetchAll PDO::FETCH ASSOC|PDO::FETCH UNIQUE ?:array ; } 引入的几个变量分别是:模式、模式值、分类、基点、数量。 全局调用pdo引擎,执行query函数。 mode:如果设置了该项,则读取指定索引列,否则按主键读取。 val:当启用mode时限定的索引列值,例如age=3中,mode=& 39;age& 39;,val=3。 tsort:要读取的主题分类,也可以用此进行权限控制。 tid:当存在qty时,读取小于等于此基点的qty个值并倒序输出。不存在qty时,读取此基点内所有值。 qty:读取数量限制以及判断开关。