日期:2014-05-16  浏览次数:20582 次

如果使用单态模式调用数据库?
请问如果使用单态模式调用数据库,方法中有返回结果集,以及数据库连接对象
我知道连接对象是在析构时销毁,请问返回的结果集改如何释放,我知道可以在方法中赋值给数组然后返回数组,释放结果集,但有时候就需要返回结果集而不是数组,请问释放结果集应该如果调用?
是在类中再写一个方法比如 free() 然后在类外调用吗?感觉这样写不好,请问大家是怎么处理的啊。

------解决方案--------------------
先明确一下 结果集资源和结果集对象的区别
结果集资源(resource)比如 mysql_query('select ...') 返回的一个资源号
结果集对象(object) 比如 mysqli_query('select ...') 返回的一个 mysqli_result 对象

你自己封装数据库类,也是可以让 db::query 返回一个对象(比如 db_result)