目录:

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. C++ 重写重载重定义区别

    C++ 重写重载重定义区别 (源自:http://blog.163.com/clevertanglei900@126/blog/static/111352259201102441934870/) 1 ...

  2. oracle 解锁表的一个小问题

    最近开发的时候遇到一个小问题,执行一段sql之后发现 表被锁了 显示错误为:ora-00054:resource busy and acquire with nowait specified 百度之后 ...

  3. javascript——正則表達式

    正則表達式(RegExp对象):主要用于表单验证 1.创建正則表達式: (1).var ret = /pattern/; pattern是内容.能够是正則表達式的内容,能够是字符或是其它的内容 (2) ...

  4. VC在windows中打开文件夹并选中文件

    网上一位前辈高人的一段精髓代码让我眼前一亮…… ShellExecute(NULL, "open", "explorer.exe", "/select ...

  5. UITableView Scroll to top 手动设置tableview 滚动到 顶部

    UITableView Scroll to top 手动设置tableview 滚动到 顶部 [mainTableView scrollRectToVisible:CGRectMake(0,0,1,1 ...

  6. Redis 数据结构之简单动态字符串SDS

    几个概念1:key对象 数据库存储键值对的键,总是一个字符串对象.2:value对象 数据库存储键值对的值,可以是字符串对象,list对象,hash对象,set对象,sorted set对象.    ...

  7. mui 页面传值

    点击第一个页面的标签,跳转到第二个页面,把第一个页面的值也传往目标页面 现在提供两种实现方式 注意:需要在手机运行才可以,用电脑浏览器可能不支持. 第一种方式  页面已创建,通过自定义事件传值 fir ...

  8. 生成批量删除多个表sql语句

    --批量删除多个表 select 'drop table ' +name from sysobjects where type = 'U' order by name

  9. jConsole,jvisualvm和jmap使用

    JConsole     JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行.可以轻松地使用 JConsole来监控 Java 应用程序性能和跟踪 Jav ...

  10. Backbone.js 1.0.0源码架构分析(一)

    Backbone.js 是javascript 语言中 首个实现MVC设计模式的类库,API接口方法重度依赖于underscore.js,DOM选择器则依赖于jQuery.js或者zepto.js. ...