数据库抽象层 什么是PDO? PHP代码示例
什么是PDO
PDO(PHP Data Object),数据库访问抽象层,统一了各种数据库的访问接口。
PDO 支持以下数据库(数据来自 php 官方网站)
驱动程序名称 | 支持的数据库 |
---|---|
PDO_CUBRID | Cubrid‼ Microsoft SQL Server / Sybase |
PDO_FIREBIRD | Firebird/Interbase 6 |
PDO_IBM | IBM DB2 |
PDO_INFORMIX | IBM Informix♷IBM Informix 动态服务器‼ .x/4.x/5.x |
PDO_OCI | Oracle 调用接口 |
PDO_ODBC | ODBC v3(IBM DB2、unixODBC 和 win32 ODBC) |
PDO_PGSQL‷P | |
PDO_PGSQL❙‷PODBC v3 | SQLite 3 和 SQLite 2 |
PDO _SQLSRV | Microsoft SQL Server / SQL Azure |
PDO_4D | 4D |
PDO安装与扩展
- 配置php.ini配置文件并启用相应的扩展这里以MySQL为例。
extension = php_pdo_mysql.dll
- 有关 PDO 扩展的详细信息可以在
phpinfo();
中找到。内容如下:
PDO的使用
- 以参数的形式连接数据库
<?php try { $dsn = 'mysql:host=localhost;dbname=test'; // 数据源 $username = 'root'; // 数据库用户名 $passwd = 'aaaaaa'; // 数据库密码 $pdo = new PDO($dsn, $username, $passwd); print_r($pdo); // 返回 PDO Object ( ) } catch (PDOException $e) { echo $e->getMessage(); }
- 以URI的形式连接数据库
<?php try { $dsn = 'uri:file:///Applications/MAMP/htdocs/Study/Pdo/dsn.txt'; // 数据源 其中 /Applications/MAMP/htdocs/Study/Pdo/dsn.txt 为文件 dsn.txt 路径 $username = 'root'; // 数据库用户名 $passwd = 'aaaaaa'; // 数据库密码 $pdo = new PDO($dsn, $username, $passwd); print_r($pdo); // 返回 PDO Object ( ) } catch (PDOException $e) { echo $e->getMessage(); }
需要配置一个单独的文件❙ dsn.txt。文件内容如下
mysql:host=localhost;dbname=test
- 通过配置文件连接数据库
首先需要编辑PHP配置php.ini
,添加以下代码❙❙命名为❝ ❙❙ 名为 连接到本地测试数据库。
在代码中使用
<?php try { $dsn = 'test'; // 在 php.ini 中定义的名称 $username = 'root'; // 数据库用户名 $passwd = 'aaaaaa'; // 数据库密码 $pdo = new PDO($dsn, $username, $passwd); print_r($pdo); // 返回 PDO Object ( ) } catch (PDOException $e) { echo $e->getMessage(); }
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。