微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

详解PHP中的PDO::quote(附代码实例

2021041911412313610.jpg

PHP在连接数据库时,可能需要为sql语句中的字符串添加引号,为了解决这一问题,我们可以使用PHP的内置函数quote()函数,本文就带大家来看一看。

首先来看一看quote()函数的语法:

public PDO::quote    ( string $string   , int $parameter_type = PDO::ParaM_STR   ) : string
  • $string:要添加引号的字符串。

  • $parameter_type:为驱动提示数据类型,以便选择引号风格。

  • 返回值:返回加引号的字符串,理论上可以安全用于 sql 语句。 如果驱动不支持这种方式,将返回 false

代码实例:

1.普通字符串加引号

<?PHP
$servername = localhost;
$username = root;
$password = root123456;
$dbname   = my_database;
 
try {
    $pdo = new PDO(MysqL:host=$servername;dbname=$dbname, $username, $password);
    echo 连接成功.<br>; 
    // $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);

    $string = 'Nice';
    print Unquoted string: $string;
    echo <br>;
    print Quoted string:  . $pdo->quote($string) . \n;
}catch(PDOException $e){
    echo $e->getMessage();
}
输出:连接成功
    Unquoted string: Nice
    Quoted string: 'Nice'

2 危险字符串加引号

<?PHP
$servername = localhost;
$username = root;
$password = root123456;
$dbname   = my_database;
 
try {
    $pdo = new PDO(MysqL:host=$servername;dbname=$dbname, $username, $password);
    echo 连接成功.<br>; 
    // $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);
    $string = 'Naughty \' string';
    print Unquoted string: $string;
    echo <br>;
    print Quoted string: . $pdo->quote($string);
    }
输出:连接成功
Unquoted string: Naughty ' string
Quoted string:'Naughty \' string'

推荐:2021年PHP面试题大汇总(收藏)》《php视频教程

原文地址:https://www.jb51.cc/php/1210162.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐