在楠神写过的项目中,我定义了两个函数,这两个函数使用特别频繁,和大家分享一下:
s_value函数:
通过条件获取单个字段的值,其实就是对数据库对象的value方法做了包装。
s_row函数:
通过条件获取多个字段的值(所有字段),这是对数据库对象find方法的包装。
楠神为什么要把这两种查询语句做包装呢?
1)这两个查询语句使用特频繁,包装成函数后,可以简化代码。
2)实现了前面章节所说的“临时缓存”功能。演示:
看结果:
解释:
在整个脚本运行中,同样的数据id14从数据库读取了两次。而id13只从数据库读取了一次。
楠神以前讲过,一个系统的瓶颈在于数据的读取,尤其是从数据库读取,是影响整个系统运行效率的关键点。还好是用主键读取的,假如执行的是一条没有使用索引,查询特费资源的SQL语句。第一次读取到数据后不暂存内存中,等到在另外一方法中又从数据库读取了一次,这种操作就会造成不必要的资源浪费。