php必须execute()区别,本文主要是分析PHP中exec()和execute()方法的用法和区别,以方便在之后的工作中更加的深入了解。其中exec()函数主要是执行一条SQL语句,并返回受影响...

本文主要是分析PHP中exec()和execute()方法的用法和区别,以方便在之后的工作中更加的深入了解。其中exec()函数主要是执行一条SQL语句,并返回受影响的行数,但此函数不会返回结果集合。而execute()函数则是用于执行已经预处理过的语句,并且只是返回执行结果成功或失败。

一、官网分析1、PDO::exec

— Execute an SQL statement and return the number of affected rows

2、PDOStatement::execute

— Executes a prepared statement

二、用法的区别1、exec示例用法

$sql = "UPDATE table SET name='book' WHERE id > 8";

$result = $db->exec($sql);

echo '影响行数:' . $result;

2、execute示例用法

$id = 9;

$sth = $db->prepare('SELECT * FROM table WHERE id < :id');

$sth->execute(array(

':id' => $id

));

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

print_r($result);

3、execute的多次运行,预处理有助于性能的提升

$sth = $db->prepare("SELECT * FROM table WHERE id = :id");

$sth->execute(array(

':id' => '6'

));

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

print_r($result);

echo "
".'换行1'."
";

$sth->execute(array(

':id' => '8'

));

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

print_r($result);

echo "
".'换行2'."
";

三、执行方法的区别1、exec()是PDO类的方法,它和PDO::query地位是并列的。

2、execute()是PDOStatement类的方法。

四、返回结果的区别1、PDO::exec()函数是执行一条SQL语句,并返回受影响的行数,注意:此函数不会返回结果集合。

2、PDOStatement::execute()函数是用于执行已经预处理过的语句,需要配合prepare()函数使用,成功时返回 TRUE,失败时返回 FALSE。

五、执行安全的区别1、exec()方法需要对开发者自行对输入的sql语句进行安全检查。

2、execute()方法支持绑定参数,无需考虑安全问题,使用时稍微麻烦一些。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值