Mysqli 动态查询 bind_results

Mysqli dynamic query bind_results

我写了一个我经常使用的数据库 class 我用过 mysqli.I 想用 PDO 写它但是它很慢(这与 ip 连接无关 :)),和我的网站真的很大,这个 pdo 的一点点缓慢将是一个真正的大问题,这就是为什么我选择了困难的方式 --Mysqli--。我写了一些动态的 class 动态绑定参数并且像这样轻松使用:

DB::getInstance()->query(sql,'ss',array($a,$b));

这非常有用,直到 today.I 想要获得结果并计算值,但我发现当我使用 num_rows mysqli get_result 时确实存在很大的问题不会工作,当我使用 get_result num rows 将永远不会工作,同样当我使用 get_result 并且如果我想再次使用它进行相同的查询时,第二个将不会工作 .Also get_result 不是很好的功能,因为它只支持 mysqlid.Then 我试过绑定结果,这是无用的,因为每个 select 查询我应该写 bind_result(params) 这不是对公司的其他开发人员有好处 also.What 我应该这样做吗?Pdo 很慢,对于我的网站来说它真的很慢,我的sqli 不适合开发人员,它增加了开发 time.How 我可以绑定结果吗动态查询?我想要像我会写 sql 语句和绑定结果应该得到列名动态地自动绑定它们然后我会写 fetch() 我会写列名我会得到 [=21= 】 我可以吗?

When I use get_result num rows will never work

这不是真的
此外,你永远不需要 num rows

when I use get_result and if I want to use it again for same query

你不想要它

get_result is not good function because it support only mysqlid

这是真的
但是,如果您的网站很大且与众不同,安装一两个所需的模块是没有问题的。

How can I bind results dinamicly for query?

使用get_result.

要重用结果,请使用 fetch_all() 将所有行放入数组,然后在您希望的任何地方使用此数组

而不是 num_rows 只需获取数据并查看是否已获取任何内容。