码迷,mamicode.com
首页 > 其他好文 > 详细

PDO预处理

时间:2014-09-13 00:39:44      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   os   使用   ar   for   div   sp   

 

方法:bool PDOStatement::execute ([ array $input_parameters ] )

 

1、PDOStatement::execute不使用参数

01)单个绑定值(PDOStatement::bindValue)

//预处理:?号占位符,绑定值,单个值
//使用1,2等数字绑定值
//注意对应关系,例如 name->?(第一个?号)->1
//适用于字段较少的情况
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(?,?,?,?)");
$stmt->bindValue(1,‘caiyu22‘);
$stmt->bindValue(2,22);
$stmt->bindValue(3,1);
$stmt->bindValue(4,‘lamp87‘);
$stmt->execute();

$stmt->bindValue(1,‘caiyu23‘);
$stmt->bindValue(2,22);
$stmt->bindValue(3,1);
$stmt->bindValue(4,‘lamp87‘);
$stmt->execute();

//预处理:用:号占位符,绑定值,单个值
//使用单引号形式为准备语句里的占位符绑定值 
//注意对应关系,例如 name->:name->‘name‘
//适用于字段较多的情况
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(:name,:age,:sex,:classid)");
$stmt->bindValue(‘:name‘,‘caiyu24‘);
$stmt->bindValue(‘:age‘,22);
$stmt->bindValue(‘:sex‘,1);
$stmt->bindValue(‘:classid‘,‘lamp87‘);
$stmt->execute();

  

02)使用批量添加方法

//预处理:?号占位符,绑定参数,多个值
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(?,?,?,?)");
$stmt->bindParam(1,$name);
$stmt->bindParam(2,$age);
$stmt->bindParam(3,$sex);
$stmt->bindParam(4,$classid);
$data=array(
array(‘yjc05‘,22,1,‘lamp‘),
array(‘yjc06‘,22,1,‘lamp‘),
array(‘yjc07‘,22,1,‘lamp‘),
);
//foreach相当于循环多次
foreach($data as $v){
list($name,$age,$sex,$classid)=$v;
$stmt->execute();
echo "操作成功!";
}

  

=========================

//预处理: 用:占位符,绑定参数,多个值
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(:name,:age,:sex,:classid)");
$stmt->bindParam(‘:name‘,$name);//用:占位符时绑定参数使用引号
$stmt->bindParam(‘:age‘,$age);
$stmt->bindParam(‘:sex‘,$sex);
$stmt->bindParam(‘:classid‘,$classid);
$data=array(
array(‘yjc08‘,22,1,‘lamp‘),
array(‘yjc09‘,22,1,‘lamp‘),
array(‘yjc10‘,22,1,‘lamp‘),
);
//foreach相当于循环多次
foreach($data as $v){
list($name,$age,$sex,$classid)=$v;
$stmt->execute();
echo "操作成功!";
}

  

2、PDOStatement::execute使用参数(数组)


无需手动绑定

01)使用:占位符

//预处理: 用:占位符,多个值
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(:name,:age,:sex,:classid)");

$data=array(
array(‘name‘=>‘yjc11‘,‘age‘=>22,‘sex‘=>1,‘classid‘=>‘lamp‘),
array(‘name‘=>‘yjc12‘,‘age‘=>22,‘sex‘=>1,‘classid‘=>‘lamp‘),
array(‘name‘=>‘yjc13‘,‘age‘=>22,‘sex‘=>1,‘classid‘=>‘lamp‘),
);
//foreach相当于循环多次
foreach($data as $v){
$stmt->execute($v);
echo "操作成功!";
}


02)使用?占位符

//预处理: 用?占位符,多个值
$stmt=$m->prepare("insert into stu(name,age,sex,classid)values(?,?,?,?)");

$data=array(
array(‘yjc14‘,22,1,‘lamp‘),
array(‘yjc15‘,22,1,‘lamp‘),
array(‘yjc16‘,22,1,‘lamp‘),
);
//foreach相当于循环多次
foreach($data as $v){
$stmt->execute($v);
echo "操作成功!";
}

  

PDO预处理

标签:style   blog   color   os   使用   ar   for   div   sp   

原文地址:http://www.cnblogs.com/52fhy/p/3969308.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!