关联数组和绑定参数
我对 PDO::prepare 函数有点困惑。
我有这样的东西
array('user_email'=>'[email protected]','user_pass'=>'password')
,我想
INSERT INTO user_info (user_email, user_pass) VALUES ([email protected], password)
使用 PDO (或 mysqli,我愿意接受建议)的参数化查询将其转换为这样的东西。 另一个想法 -
array('uid'=>'10', 'first_name'=>'robert', 'last_name'=>'jones')
array("email", "number")
我知道
SELECT email, number FROM t1 WHERE uid=10 AND first_name=robert AND last_name=jones
答案位于 PDO::prepare
和 call_user_func_array
的某个地方,但我对后一个函数的工作原理感到非常困惑,并且希望有一个解释。
I've gotten a little confused with the PDO::prepare
functions.
I have something like this
array('user_email'=>'[email protected]','user_pass'=>'password')
and i'd like to translate it into something like this
INSERT INTO user_info (user_email, user_pass) VALUES ([email protected], password)
using parameterized queries with PDO (or mysqli, I'm open to suggestions).
Another idea -
array('uid'=>'10', 'first_name'=>'robert', 'last_name'=>'jones')
array("email", "number")
into
SELECT email, number FROM t1 WHERE uid=10 AND first_name=robert AND last_name=jones
I know the answer lies somewhere with PDO::prepare
and call_user_func_array
, but I've gotten really confused on how the latter function works, and would appreciate an explanation.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我很困惑,也许你也是。 这是一个简单的例子:
或:
或:
希望这有帮助!
I'm confused, and maybe you are too. Here is a simple example:
Or:
Or:
Hope this helps!
PDOStatement::execute() 使用参数标记,因此您必须在调用 PDO::prepare() 之前构造查询。
PDOStatement::execute() works with parameters markers, so you have to construct query before calling PDO::prepare().
您不必使用 call_user_func_array()。 PDOStatement::execute() 默认采用关联数组。
http://se.php.net/manual/en/pdo.prepare。 php
You don't have to use call_user_func_array(). PDOStatement::execute() takes associative arrays by default.
http://se.php.net/manual/en/pdo.prepare.php