--TEST-- Bug #50323 (No ability to connect to database named 't;', no chance to escape semicolon) --SKIPIF-- --FILE-- $v) { $tmp = explode('=', $v); if (count($tmp) == 2) $old_options[$tmp[0]] = $tmp[1]; } $options = $old_options; foreach ($new_options as $k => $v) $options[$k] = $v; $dsn = 'mysql:'; foreach ($options as $k => $v) $dsn .= sprintf('%s=%s;', $k, $v); $dsn = substr($dsn, 0, strlen($dsn) -1); return $dsn; } if (1 === @$db->exec('CREATE DATABASE `crazy;dbname`')) { $dsn = changeDSN(getenv('PDOTEST_DSN'), array('dbname' => 'crazy;;dbname')); $user = getenv('PDOTEST_USER'); $pass = getenv('PDOTEST_PASS'); new PDO($dsn, $user, $pass); } echo 'done!'; ?> --CLEAN-- exec('DROP DATABASE IF EXISTS `crazy;dbname`'); ?> --EXPECT-- done!