我读到https://wikis.oracle.com/display/mysql/Converting+to+MySQLi可以帮助我,我读了How could I change this mysql to mysqli?.它说我可以用函数添加’i’替换大部分函数,并且我应该开始bughunting.
但是我的网站非常复杂和庞大,需要很长时间才能检查一切是否正常.那么:对于一个非常大的网站,从MysqL切换到MysqLi的最佳方法是什么?
谢谢!
如果您在整个代码中直接调用MysqL_ *函数,而没有通过辅助类或函数进行查询的数据库抽象层,那么您将需要编辑每个命令.
你不能只是为MysqL_query这样的命令添加一个mys,因为程序上MysqLi_query()要求第一个参数是db的链接,如果连接是MysqL_query(),那么它就是第二个参数.
而不是仅仅将MysqL_query(…)更改为MysqLi_query($link,…..)我建议没有更好的时间来放置db抽象层.因此,使用实际处理查询的函数,例如sql_query(),以便将来如果需要再次更改DB,只需在一个抽象文件中更新db特定命令即可.这样,如果你编写一个包装MysqLi_query的函数,那么你就可以简单地将你的MysqL_query()重命名为你的helper函数,并让helper函数担心把链接放在那里.
虽然这是最简单的方法,但它不会绑定参数或准备语句,这是防止sql注入漏洞的主要因素
一旦更改了所有这些命令,就需要进行测试.
如果您没有编写自动化测试,那么这可能是开始编写它们的好时机.即使您需要检查每个更改是否有效,如果您通过自动化测试进行,那么您可以避免将来的这种痛苦.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。