【发布时间】:2010-09-05 23:22:33
【问题描述】:
在我即将结束的一个项目中,我为 PHP 编写并实现了一个对象关系映射解决方案。在怀疑者和梦想家大声喊出“到底怎么回事?”之前,放松一下——我还没有找到一种方法来使后期的静态绑定起作用——我只是在以尽可能最好的方式解决它。
无论如何,我目前没有使用准备好的语句进行查询,因为我想不出一种方法来将可变数量的参数传递给bind_params() 或bind_result() 方法。
你问,为什么我需要支持可变数量的参数?因为我的模型的超类(将我的解决方案想象成一个被破解的 PHP ActiveRecord 崇拜者)是定义查询的地方,所以例如 find() 方法不知道它需要绑定多少参数.
现在,我已经考虑过构建一个参数列表并将一个字符串传递给 eval(),但我不太喜欢这种解决方案——我宁愿只实现自己的安全检查并传递语句.
有人对如何完成这项工作有任何建议(或成功案例)吗?如果你能帮我解决第一个问题,也许我们可以解决绑定结果集(如果涉及到确定表结构的初始查询,我怀疑这会更困难,或者至少更耗费资源)。
【问题讨论】: