我在 PHP 中有这一行,它正在 PDO 中构建查询参数:
$p[':criteria'] = '%' . $search . '%';
有问题的 MySQL 行如下所示:
d.d_name LIKE :criteria
问题是如果我在 $search 中输入一个数字,它会将它转换为一个字符。例如,如果我将 $search 设置为:
6008
我希望它是:
%6008%
但我得到的是:
`08%
看起来它是对第一个 2 个字符进行 % 编码。我尝试使用 urldecode() 来还原它,但它没有用。它将字符串保持为 08%。
我怎样才能阻止这种情况发生?