PHP 5 及以上版本建议使用以下方式连接 MySQL :

  • MySQLi :MySQLi 只针对 MySQL 数据库,MySQLi 还提供了 API 接口。
  • PDO (PHP Data Objects):PDO 应用在 12 种不同数据库中。

共同点:

  1. 两者都是面向对象

  2. 两者都支持预处理语句。 预处理语句可以防止 SQL 注入,对于 web 项目的安全性是非常重要的。

确保wamp里已经安装好了MySQLi或PDO,查看方式:echo phpinfo();

接下来将会使用以下三种方式来演示 PHP 操作 MySQL:

  • MySQLi (面向对象)
  • MySQLi (面向过程)
  • PDO

1. MySQLi - 面向对象

<?php
header('Content-Type: text/html;charset=utf-8'); //echo phpinfo(); // MySQLi面向对象
// 在我们访问MySQL数据库之前,我们需要先连接到数据库服务器
$servername = "localhost";
$username = "root";
$password = ""; // 创建连接
$conn = new mysqli($servername, $username, $password); // 检测连接
if($conn -> connect_error)
{
die("连接失败:". $conn->connect_error);
} echo "连接成功";
?>

2.  MySQLi - 面向过程

<?php
header('Content-Type: text/html; charset=utf-8'); // MySQLi - 面向过程
$servername = "localhost";
$username = "root";
$password = ""; // 创建连接
$conn = mysqli_connect($servername, $username, $password); // 检测连接
if(!$conn)
{
die("连接失败:" . mysqli_connect_error());
} echo "连接成功";
?>

3. PDO连接MySQL数据库

PDO要设置数据库名,如果没有指定,则会抛出异常

<?php
header('Content-Type: text/html; charset=utf-8'); // PDO连接MySQL数据库
// PDO要设置数据库名,如果没有指定,则会抛出异常 $servername = "localhost";
$username = "root";
$password = "";
$dbname = "mugua"; try
{
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
echo "连接成功";
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>

连接在脚本执行完毕后会自动关闭,也可以使用代码关闭连接:

MySQLi - 面向对象

$conn->close();

MySQLi - 面向过程

mysqli_close($conn);

PDO

$conn = null;

PHP连接MySQL数据库的几种方式的更多相关文章

  1. PHP连接MySQL数据库的三种方式(mysql、mysqli、pdo)

    PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 .PHP的mysqli扩展 .PHP数据对象(PDO) ,下面针对以上三种连接方式做下总结,以备在不同场景下选出最优方案. P ...

  2. php连接MySQL数据库的三种方式(mysql/mysqli/pdo)

    引言 PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 .PHP的mysqli扩展 .PHP数据对象(PDO) ,下面针对以上三种连接方式做下总结,以备在不同场景下选出最优方案 ...

  3. PHP连接MySQL数据库的三种方式(mysql、mysqli、pdo)--续

    2.PHP与Mysqli扩展,面向过程.对象 <?php $mysql_conf = array( 'host' => '127.0.0.1:3306', 'db' => 'test ...

  4. C++连接mysql数据库的两种方法

    本文主要介绍了C++连接mysql数据库的两种方法,希望通过本文,能对你有所帮助,一起来看. 现在正做一个接口,通过不同的连接字符串操作不同的数据库.要用到mysql数据库,以前没用过这个数据库,用a ...

  5. plsql 连接oracle数据库的2种方式

      plsql 连接oracle数据库的2种方式 CreationTime--2018年8月10日09点50分 Author:Marydon 方式一:配置tnsnames.ora 该文件在instan ...

  6. ThinkPHP中连接mysql数据库的四种实用和通用的连接方法

    ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库适配器来处理.目前的数 ...

  7. Eclipse通过jdbc连接sqlserver2008数据库的两种方式

    数据库登录身份验证方式有两种     其中服务器名称即为安装SQLServer2008的电脑,充当数据库服务器,在笔者这里就是自己的电脑名称. 身份验证方式有两种:windows身份验证和SQLSer ...

  8. 使用EntityFramework6连接MySql数据库(db first方式)

    准备工具: VS2013.MySQL For VisualStudio 1.1.4.Connector/Net 6.8.3(百度网盘里) 程序包管理器执行命令: Install-Package Ent ...

  9. 登录进入Mysql数据库的几种方式

    前提:连接进入mysql数据库 本机安装的myslq基础信息: host= "localhost", # 数据库主机地址:127.0.0.1 port=3306, # 端口号 us ...

随机推荐

  1. SJTU 机试 最小面积子矩阵 压缩+双指针

    链接:https://www.nowcoder.com/questionTerminal/8ef506fbab2742809564e1a288358554来源:牛客网 一个N*M的矩阵,找出这个矩阵中 ...

  2. jquery遇到的坑

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. Joi图标

    刚开始浏览API的时候,旁边这个图片还真没明白是啥意思.现在才明白过来:),检测工具嘛,哈哈.

  4. [转] Spring Integration 系统集成

    [From] http://blog.csdn.net/w_x_z_/article/details/53316618 pring Ingegration 提供了基于Spring的EIP(Enterp ...

  5. Oracle 查看表结构视图

    -- 创建视图 CREATE VIEW VIEW_TABLEASSELECT A.TABLE_NAME, A.column_name 字段名,A.data_type 数据类型,A.data_lengt ...

  6. PIE SDK克里金插值法

    1.算法功能简介 克里金插值法基于一般最小二乘法的随机插值技术没用方差图作为权重函数,被应用于任何点数据估计其在地表上分布的现象,被称为空间自协方差最佳插值法,是一种最优内插法也是一种最常用的空间插值 ...

  7. Git merge 和 rebase 进一步比较

    但是 假如 我不想看到 分支转折点呢 合并的分支始终会存在一个交叉点 Microsoft Windows [版本 10.0.17134.345] (c) Microsoft Corporation.保 ...

  8. windows同时安装python2和python3两个版本

    1.安装python2 下载地址: https://www.python.org/downloads/windows/ 进入页面,下拉,64位系统要选择这个. 下载完成后,一直点击下一步,直到安装完毕 ...

  9. MYSQL分区表详解

    分区表对用户来说是一个独立的逻辑表,但是底层是多个物理字表组成的.分区代码实际上是对一组底层表的句柄对象封装.对分区表的请求,都会通过句柄对象转化成储存引擎的接口调用.所以分区对于SQL层来说是一个完 ...

  10. 完全原生javascript简约日历插件,js、html

    效果图: 效果如图所示,尽管看上去并不是很美观,但是,基本上的功能还是已经完成了,码了一天多的时间,权当做复习一下js吧. 整个做下来差不多码了500多行代码~其实只是很多的样式也包括了在其中了,虽然 ...