1--TEST-- 2PDO_DBLIB: Ensure quote function returns expected results 3--EXTENSIONS-- 4pdo_dblib 5--SKIPIF-- 6<?php 7require __DIR__ . '/config.inc'; 8getDbConnection(); 9?> 10--FILE-- 11<?php 12require __DIR__ . '/config.inc'; 13$db = getDbConnection(); 14var_dump($db->quote(true, PDO::PARAM_BOOL)); 15var_dump($db->quote(false, PDO::PARAM_BOOL)); 16var_dump($db->quote(42, PDO::PARAM_INT)); 17var_dump($db->quote(null, PDO::PARAM_NULL)); 18var_dump($db->quote('\'', PDO::PARAM_STR)); 19var_dump($db->quote('foo', PDO::PARAM_STR)); 20var_dump($db->quote('foo', PDO::PARAM_STR | PDO::PARAM_STR_CHAR)); 21var_dump($db->quote('über', PDO::PARAM_STR | PDO::PARAM_STR_NATL)); 22 23var_dump($db->getAttribute(PDO::ATTR_DEFAULT_STR_PARAM) === PDO::PARAM_STR_CHAR); 24$db->setAttribute(PDO::ATTR_DEFAULT_STR_PARAM, PDO::PARAM_STR_NATL); 25var_dump($db->getAttribute(PDO::ATTR_DEFAULT_STR_PARAM) === PDO::PARAM_STR_NATL); 26 27var_dump($db->quote('foo', PDO::PARAM_STR | PDO::PARAM_STR_CHAR)); 28var_dump($db->quote('über', PDO::PARAM_STR)); 29var_dump($db->quote('über', PDO::PARAM_STR | PDO::PARAM_STR_NATL)); 30 31$db = getDbConnection(PDO::class, [PDO::ATTR_DEFAULT_STR_PARAM => PDO::PARAM_STR_NATL]); 32var_dump($db->getAttribute(PDO::ATTR_DEFAULT_STR_PARAM) === PDO::PARAM_STR_NATL); 33 34?> 35--EXPECTF-- 36string(3) "'1'" 37string(2) "''" 38string(4) "'42'" 39 40Deprecated: PDO::quote(): Passing null to parameter #1 ($string) of type string is deprecated in %s on line %d 41string(2) "''" 42string(4) "''''" 43string(5) "'foo'" 44string(5) "'foo'" 45string(8) "N'über'" 46bool(true) 47bool(true) 48string(5) "'foo'" 49string(8) "N'über'" 50string(8) "N'über'" 51bool(true) 52