PHP PDO:连接到MySQL / MariaDB服务器
示例
有两种方法可以连接到MySQL/MariaDB服务器,具体取决于您的基础结构。
标准(TCP/IP)连接
$dsn = 'mysql:dbname=demo;host=server;port=3306;charset=utf8'; $connection = new \PDO($dsn, $username, $password); //引发SQL错误时引发异常 $connection->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); //防止模仿准备好的语句 $connection->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false);
由于PDO被设计为与旧的MySQL服务器版本(不支持预准备语句)兼容,因此您必须显式禁用该仿真。否则,您将失去通常通过使用预备语句授予的额外的预防注射利益。
您必须记住的另一个设计折衷方案是默认的错误处理行为。如果没有其他配置,PDO将不显示任何SQL错误指示。
强烈建议将其设置为“异常模式”,因为在编写持久性抽象时(例如:在违反UNIQUE约束时有异常),这会为您提供更多功能。
插座连接
$dsn = 'mysql:unix_socket=/tmp/mysql.sock;dbname=demo;charset=utf8'; $connection = new \PDO($dsn, $username, $password); //引发SQL错误时引发异常 $connection->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION); //防止模仿准备好的语句 $connection->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false);
在类似Unix的系统上,如果主机名是'localhost',则通过域套接字建立与服务器的连接。
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短