+
80
-

php pdo 执行 like sql查询代码怎么写?

请问php pdo 执行 like sql查询代码怎么写?

网友回复

+
0
-
<?php
$pdo = new \PDO('mysql:host=localhost;dbname=guest;port=3306', 'guest', 'p6yhG8iDRMNxdJ9w');

// 第一种绑定方式
$param1 = "bfw";
$sql1 = "select * from User where username like ?";
$stmt1 = $pdo->prepare($sql1);
if ($stmt1->execute([
    "%$param1%",
])) {
    $res1 = $stmt1->fetchAll(\PDO::FETCH_ASSOC);
    print_r($res1);
}

//第二种绑定方法
$sql1 = 'SELECT *  FROM User WHERE username LIKE :username';


$stmt = $pdo->prepare($sql1);
$stmt->bindValue(':username','%'.$param1.'%');

$stmt->execute(); 
$rows = $stmt->fetchAll();
print_r($rows);

// IN 查询预处理
$param2 = [2,3,4];
$prepare = rtrim( str_pad('?', 2 * count($param2), ',?') , ',');
$sql2 = "select * from User where id  in($prepare)";
$stmt2 = $pdo->prepare($sql2);
if ($stmt2->execute($param2)) {
    $res2 = $stmt2->fetchAll(\PDO::FETCH_ASSOC);
    print_r($res2);
}

我知道答案,我要回答