目录:

00x1 php中的pdo是什么?

00x2 pdo创建一个PDO对象


00x1 php中的pdo是什么?

就是操作数据库的方法,
pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验证而已。


果要开启某个PDO直接在PHP.ini当中激活即可。(直接将分号去除即可)

详细的开启服务可以在phpinfo下面查询即可。

00x2 创建一个PDO对象?


mysql连接数据库的方式是
<?php
mysql_connect("localhost","root","");
mysql_select_db('test');
?>

既然说了PDO就是将数据库封装成类。(Ps:PDO现在大多数主流的数据库)

PDO有四个参数:分别是$dsn、$username、$password、优化驱动的参数、

什么是dsn呢?其实DSN就是Data Source Name的简称,即数据源名。

data其实就是主机、数据库、数据库的驱动。

那么我们先用PDO来连接一下oracle数据库:

在此之前我们必须要安装oralce的驱动,我使用的是wampserver,自动就有装了主流数据库的一些驱动。

pdo的所在目录是:php\php5.3.10\ext

下图就是对应数据库的PDO驱动:

<?php
try {
$pdo = new PDO("mysql:host=localhost;port=3306;dbname=admin","root","");//如果PDO出现异常那么就执行catch中的代码。否则不执行catch进而继续向下执行。
} catch (Exception $e) {
echo "数据库连接失败!".$e->getmessage();
exit;
}
echo "创建PDO对象成功!";
?>

图中所指的是驱动:必须要安装才可以进行使用。

上面一个案例当中并没有使用到第四个参数,因为是可选的,PDO为我们提供优化驱动的第四个参数是一个数组。所以我们可以同时优化多个。

<?php
try {
$pdo = new pdo("mysql:host=localhost;port=3306;dbname=test","root","",array(PDO::ATTR_AUTOCOMMIT=>false));
} catch (PDOException $e) { }
echo $pdo->getattribute(PDO::ATTR_AUTOCOMMIT); ?>

  

THE END


跟着百度学PHP[14]-初识PDO数据库抽象层的更多相关文章

  1. 初识PDO数据库抽象层

    目录: 00x1 php中的pdo是什么? 00x2 pdo创建一个PDO对象 00x1 php中的pdo是什么? 就是操作数据库的方法,pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验 ...

  2. 跟着百度学PHP[14]-PDO之Mysql的事务处理2

    前面所将仅仅是在纯mysql下的讲解,这节就是要将其搬到PDO台面上来了. 将自动提交关闭. SetAttribute下有一个PDO::ATTR_AUTOCOMMIT 将其设置为0即可关闭,如:$pd ...

  3. 跟着百度学PHP[14]-PDO的错误处理模式&PDO执行SQL

    我们在使用PDO去执行sql语句的时候并不会报错.如下案例所示: <?php try { //$pdo = new pdo("mysql:host=主机;port=端口;dbname= ...

  4. 跟着百度学PHP[14]-PDO的预处理语句2

    在$sql = $pdo -> prepare("insert into users(gold,user,password) values(?,?,?)"):条语句我们不仅仅 ...

  5. 跟着百度学PHP[14]-PDO的预处理语句1

    预处理语句有以下两个特点: 1.效率高 2.安全性好 为什么说预处理语句效率高呢? 预处理语句就好比一个模板,比如下面的一串插入语句: insert into admin(id,username,pa ...

  6. 跟着百度学PHP[14]-PDO之Mysql的事务处理1

    事务处理:在实际案例当中干一件事的mysql语句(好比转账,小一同学转账100,小二同学收账,在mysql当中小一就要减去转账的钱,小二就要增加100快)倘若该语句执行过程中有任何一条的sql语句出错 ...

  7. 跟着百度学PHP[14]-COOKIE的应用/网站登陆案例完整案例

    先在数据库当中创建以下数据: mysql> create table user( -> id int not null auto_increment, ) not null default ...

  8. 跟着百度学PHP[14]-PDO-优化驱动

    使用方法设置预定义变量 PDO的方法/属性 PDO::beginTransaction — Initiates a transaction PDO::commit — Commits a transa ...

  9. 跟着百度学PHP[17]-复习PDO的几个关键词

    主要就是复习一下几个关键词.发现太久没有写又忘了.惭愧. final self static const

随机推荐

  1. vue项目中使用地图组件

    一.引入高德地图 一般用使用vue-cli webpack最简单粗暴的引入地图api的方法就是,在入口index.html的头部直接引入,记得一定要带上key,如果没有的话去高德地图api的官网申请一 ...

  2. 安装red5 1.0.1版本Java_home不能用Java7

    安装red5     1.0.1一直出现问题,安装顺利可以过,但是一访问老是报错. 用1.0之前的版本则没有问题.好一顿折腾,查看log发现问题出在tomcat 的nio上,查询这个问题有回复说是jr ...

  3. 纯 PHP 代码最好在文件末尾删除 PHP 结束标记

    如果文件内容是纯 PHP 代码,最好在文件末尾删除 PHP 结束标记.这可以避免在 PHP 结束标记之后万一意外加入了空格或者换行符,会导致 PHP 开始输出这些空白,而脚本中此时并无输出的意图. & ...

  4. 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-为什么没有自动识别成标准FBD功能块

    新建一个项目,是不会自动把FBD对应名称的模块识别成标准功能块的   你需要引入相应的类库重新输入FBD   然后才会自动生成     更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: ht ...

  5. js中,三元运算的简单应用(?:)

    js中,三元运算的简单应用: var sinOrMul = ""; sinOrMul =(subType=="single")?("<span ...

  6. vue - helloWorld

    1.cdn概念:cdn全称内容分发网络,也是加速服务之一. 2.数据绑定:{{data}} 3.el属性(挂载对象):el:标签任意(例如:#app,.app,app) 4.data:{} => ...

  7. iOS程序发布测试-生成ad hoc证书

    转自: http://blog.sina.com.cn/s/blog_68444e230100srdn.html iOS程序发布测试3-生成ad hoc证书 iOS证书分2种,1种是开发证书,用来给你 ...

  8. ES6 iterator 迭代器

    iterator使用TypeScript 的描述: interface Iterable { [Symbol.iterator]() : Iterator, } interface Iterator ...

  9. 微信小程序之趣闻

    代码地址如下:http://www.demodashi.com/demo/13433.html 前言 小程序 的火热程度我就不多说了,我之前对这个就蛮有兴趣的,于是花了大概5天的时间,完成了 学习-入 ...

  10. tortoisesvn帮助手册

    http://tortoisesvn.net/docs/nightly/TortoiseSVN_zh_CN/index.html