php – 如果在循环中使用MySQLi预处理语句,何时调用bind_param?
我正在尝试学习如何使用
MySQLi的预准备语句来插入数据.
尽管准备好的语句因其重复执行类似语句的能力而受到称赞,但我似乎无法找到使用MySQLi在循环中执行多个语句的示例.我对以下内容特别困惑: >是否在循环之前或循环内调用bind_param 准备语句的大多数教程都使用PDO.使用PDO,可以传递一组参数值来执行,从而无需调用bindParam. MySQLi不是这种情况. PHP手册 >为变量赋值 从上面的判断来看,我假设我需要在循环中调用bind语句. 但是,PHP手册 >准备声明 请注意,此示例未显示的一件事是首次声明变量的位置.我认为将未声明的变量传递给bind_param会产生通知.我终于想通了我可以传递未定义的变量,因为它们是通过引用传递的. 题: 注意:代码已经使用MySQLi,我不想切换到PDO(现在切换超出了本项目的范围). 解决方法
由于参数是通过引用传递的,因此可以在调用bind_param之前或之后将值分配给变量.无论哪种方式都可行.
如果变量是按值传递的,则每次更改值时都需要绑定它们.但由于它们是通过引用传递的,因此您只需将它们绑定一次即可. 在单个执行的情况下,操作的顺序并不重要,并且可能取决于值的来源.在循环的情况下,你应该在循环之前调用bind_param. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |