PDO::prepare是什么意思,能解决什么问题
Admin 2022-07-09 群英技术资讯 504 次浏览
PDO::prepare
PDO::prepare — 准备要执行的SQL语句并返回一个 PDOStatement 对象(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
说明
语法
public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )
为PDOStatement::execute()
方法准备要执行的SQL语句,SQL语句可以包含零个或多个命名(:name)或问号(?)参数标记,参数在SQL执行时会被替换。
你不能在 SQL 语句中同时包含命名(:name)或问号(?)参数标记,只能选择其中一种风格。
预处理 SQL 语句中的参数在使用PDOStatement::execute()
方法时会传递真实的参数。
参数
statement
合法的SQL语句。 driver_options
此数组包含一个或多个key= >value 对来设置 PDOStatement 对象的属性, 最常使用到是将PDO::ATTR_CURSOR值设置为PDO::CURSOR_SCROLL来请求一个可滚动游标。
返回值
如果成功,PDO::prepare()
返回PDOStatement对象,如果失败返回 FALSE 或抛出异常 PDOException 。
实例
使用命名(:name)参数来准备SQL语句
<?php /* 通过数组值向预处理语句传递值 */ $sql = 'SELECT name, colour, calories FROM fruit WHERE calories < :calories AND colour = :colour'; $sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY)); $sth->execute(array(':calories' => 150, ':colour' => 'red')); $red = $sth->fetchAll(); $sth->execute(array(':calories' => 175, ':colour' => 'yellow')); $yellow = $sth->fetchAll(); ?>
使用问号(?)参数来准备SQL语句
<?php /* 通过数组值向预处理语句传递值 */ $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit WHERE calories < ? AND colour = ?'); $sth->execute(array(150, 'red')); $red = $sth->fetchAll(); $sth->execute(array(175, 'yellow')); $yellow = $sth->fetchAll(); ?>
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
使用接口(interface),可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。接口是通过 interface 关键字来定义的,就像定义一个标准的类一样,但其中...
swoole编译失败的解决办法:首先在“~/.bashrc”文件中加入内容为“export LANGUAGE="en_US.UTF-8"”;然后执行命令“source /root/.bashrc”;最后安装相关依赖库即可。
本节介绍 PHP 中无法归类的一些函数,即,杂项函数。有不少朋友对此感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
php中array_reverse()函数的翻转:1、用于以相反的顺序返回数组,它接受一个数组并以相反的顺序返回带有值的新数组;2、如果第二个参数指定为 true,则元素的键名保持不变,否则键名将丢失。
这篇文章主要给大家分享的是有关php实现 JSON 数据的编码和解码操作的内容。很多PHP新手对于在PHP中使用JSON不是很清楚,因此分享给大家做个参考,希望对大家学习有一定的帮助,感兴趣的朋友就继续往下看吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008