pdostatement::execute-k8凯发旗舰

(php 5 >= 5.1.0, php 7, php 8, pecl pdo >= 0.1.0)

pdostatement::execute执行预处理语句  

说明

public pdostatement::execute(?array $params = null): bool

执行预处理语句。如果预处理语句含有参数标记,必须选择下面其中一种做法:

  • 必须调用 pdostatement::bindparam() 和/或 pdostatement::bindvalue() 以将变量或值(分别)绑定到参数标记。如果有的话,通过关联参数标记绑定的变量来传递输入值和取得输出值

  • 或必须传递只作为输入参数值的数组

参数


  • params

  • 一个元素个数和将被执行的 sql 语句中绑定的参数一样多的数组。所有的值作为 pdo::param_str 对待。

    多个值不能绑定到一个参数;比如,不允许绑定两个值到 in()子句中一个单独的命名参数。

    绑定的值不能比指定的多;如果在 params 中存在比 pdo::prepare() 预处理的sql 指定的多的键名,则此语句将会失败并发出一个错误。

返回值

成功时返回 true, 或者在失败时返回 false

错误/异常

如果属性 pdo::attr_errmode 设置为 pdo::errmode_warning,则发出级别为 e_warning 的错误。

如果属性 pdo::attr_errmode 设置为 pdo::errmode_exception,则抛出 pdoexception

范例

example #1 执行绑定变量和值的预处理语句

/* 通过绑定变量和值执行预处理语句 */
$calories = 150;
$colour = 'gre';
$sth = $dbh->prepare('select name, colour, calories
   from fruit
   where calories < :calories and colour like :colour'
);
$sth->bindparam('calories', $calories, pdo::param_int);
/* 名称也可以以冒号":"为前缀(可选)*/
$sth->bindvalue(':colour', "%$colour%");
$sth->execute();
?>  

example #2 使用命名值数组执行预处理语句

/* 通过传递一个含有插入值的数组执行一条预处理语句 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('select name, colour, calories
   from fruit
   where calories < :calories and colour = :colour'
);
$sth->execute(array('calories' => $calories, 'colour' => $colour));
/* 数组键也可以以冒号":"为前缀(可选)*/
$sth->execute(array(':calories' => $calories, ':colour' => $colour));
?>  

example #3 使用位置值数组执行预处理语句

2
#pdo #php
hi,word
ce
2023-04-12
hi,word
游客
2023-04-12
hi,word
ce
2023-04-12
hi,word
ce
2023-04-12
hi,word
平生
2023-04-12
hi,word
ce
2023-04-12
hi,word
ce
2023-04-12
发表评论
投稿
网站地图