//1.连接数据库
$pdo = new PDO('mysql:dbname=php','root','root');
//2.准备查询语句
$sql = "SELECT name,email FROM user WHERE user_id < :user_id";
//3.创建预处理对象
$stmt = $pdo->prepare($sql);
//4.参数绑定并执行
$user_id = 5;
bindParam(),第二个参数必须是变量,不能是字面量
$stmt->bindParam(':user_id',$user_id,PDO::PARAM_INT);
bindValue()第二个参数必须是字面量,不能是变量
$stmt->bindValue(':user_id', 6, PDO::PARAM_INT);
变量参数还可以做为execute()的参数传递
$stmt->execute(['user_id'=>5]);
//5.结果集的处理
$stmt->setFetchMode(PDO::FETCH_ASSOC); $row = $stmt->fetch(); $row = $stmt->fetch(PDO::FETCH_ASSOC); var_export($row); //字符串方式输出 echo '<br>'; fetch()会将记录指针自动下移 $row = $stmt->fetch(PDO::FETCH_ASSOC); var_export($row); //字符串方式输出 echo '<hr>';
用循环来实现
while($row=$stmt->fetch(PDO::FETCH_ASSOC)) { var_export($row); //字符串方式输出 echo '<br>'; }