作者:极客小俊 一个专注于web技术的80后
我不消拼过聪明人,我只必须拼过哪些懒人 我就必定会超越大部分人!
知乎@极客小俊,官方首发原创文案
前言
重点说两个方面 PHP数据库驱动的简介PHP连接数据库的区别方式案例比较
PHP数据库驱动简介
这儿的驱动指的是的一段特定类型的数据库服务器进行交互的软件代码。驱动可能会调用有些库。类似于Java中的数据库驱动的概念
其实亦便是数据库厂商供给的数据库操作二进制代码库!
例如: Oracle中的oci.dll、
PHP数据库驱动
数据库驱动位置于PHP和数据库进行通信的最底层,这一层便是数据库驱动层, 区别的数据库厂商都会在基于某个框架的前提下实现自己的驱动,用以供给基本功能、以及特定数据库的高级功能
PHP连接器
在数据库驱动层之上是 连接器、或叫适配器抽象层,或通俗点叫连接层、用于PHP代码和数据库进行连接,
例如PHP研发者能够运用PDO(PHP Database Object)、或直接运用扩展接口(mysql、mysqli) 这些暴露出来的API函数来与底层数据库进行通信。
数据库驱动层、连接器 、PHP代码应用层 图如下
小知识:文件类型数据库
文件型是一种基于文件的数据库引擎,况且运用文件I/O(输入/输出)函数来存储和读取来自磁盘上文件的数据库。
它广泛亦比关系型数据库(例如Mysql)小非常多! (例如典型的文件型数据库SQLite命令行版本的体积少于200KB)
同期,文件型数据库支持你所熟悉的大部分SQL命令,同期拥有易于携带的特点
PHP连接数据库的区别方式、以及区别业务场景下的优缺点
1.运用扩展API接口与数据库通信
PHP代码是由于有些可选扩展构成的核心功能
PHP 的MySQL数据库关联扩展,例如mysqli,mysql都是基于PHP扩展框架实现的
这些扩展的功效便是暴露一个API给PHP程序员, 准许扩展自己的功能能够被程序员运用 当然,亦有一部分基于PHP扩展框架 研发的扩展不会给PHP程序员暴露API接口。 例如说PDO MySQL驱动扩展,就无向PHP程序员暴露API接口,然则向它上层的PDO层供给了一个接口在实质编程中,运用频度最多的还是以扩展API的方式去连接数据库
mysql扩展
小伙伴是不是经常修改php.ini文件的时候看见了extension=php_mysql.dll 这个东西呢 它便是一个mysql扩展,
这是研发时准许PHP应用与MySQL数据库交互的初期扩展 , mysql扩展供给了一个面向过程的接口,并且是针对MySQL4.1.3或更早版本设计的。
mysql扩展的位
|