当前位置 : 主页 > 网络编程 > PHP >

打通任督二脉,实现mysql与php的连接

来源:互联网 收集:自由互联 发布时间:2021-08-08
想要做一桌好菜,首先得拥有不寻常的厨艺,其次便是拥有新鲜食材,而这新鲜的食材便躺在这数据库中,如何打开这数据库的大门,一枚万能钥匙足矣,何须多哉? PDO 便是这万能钥匙
想要做一桌好菜,首先得拥有不寻常的厨艺,其次便是拥有新鲜食材,而这新鲜的食材便躺在这数据库中,如何打开这数据库的大门,一枚万能钥匙足矣,何须多哉?PDO便是这万能钥匙,无论什么样的数据库大门都能打开。

定义:

PDOPHP Data Object的简称,代表PHP数据对象,是一种纯面向对象的方式实现的数据库操作扩展

1.PDO类虽然提供了很多方法,但是常用的方法有以下几个:

  • PDO::__construct():实例化PDO对象

  • PDO::exec():执行一个写操作SQL指令,返回受影响的行数

  • PDO::query():执行一个读操作SQL指令,返回一个PDOStatement类对象(后者进行数据解析操作)

  • PDO::errorCode()和PDO::errorInfo():获取上次错误的信息(错误码和错误描述数组)

2.PDO实例化对象

<?php
   //方案1:直接写入数据进行数据库初始化
   $pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root');
   //方案2:利用变量保存数据来实现数据库初始化(数据来源可以是其他配置文件:安全)
   $dsn = 'mysql:host=localhost;dbname=my_database';
   $user = 'root';
   $pass = 'root';
   $pdo = new PDO($dsn,$user,$pass);
?>

实例化对象利用其构造方法__construct(string $dsn,string $user,string $pass[,array $drivers])实现

  1. $dsn:一个数据库基本信息字符串,包含数据库产品,主机地址等。

    格式:mysql:host=localhost;port=3306;dbname=my_database

    mysql代表数据库类型

    host代表主机地址

    port代表端口号(使用默认的端口号3306可以省略)

    dbname代表数据库库名

  2. $user:用户名,如果数据库允许匿名用户出现,那么可以没有该参数(只有$dsn)。

  3. $pass:密码,与用户名一样。

  4. $drivers:PDO属性设置,是关联数组,利用PDO内部的常量进行设置。(这个可以省略)

3.PDO实例化对象后的数据类型

<?php
     $pdo = new PDO('mysql:host=localhost;port=3306;dbname=my_database','root','root');
     
     var_dump($pdo);//object(PDO)#1 (0) { }
?>

网友评论