博客列表 >PHP MySQLi连接MySQL数据库的三种方式

PHP MySQLi连接MySQL数据库的三种方式

hanyufeng的博客
hanyufeng的博客原创
2017年12月31日 23:30:19830浏览

方法一:直接将参数写到连接字符串中

可以每个操作使用一个函数:

demo1-1.php

<?php
//直接将参数写到连接字符串中
//使用多个函数

//依次填写主机名、用户名、密码、数据库名
$db = mysqli_connect('localhost', 'root', '168168', 'php60');
//尝试连接
if (mysqli_connect_errno($db)) {
    echo '连接失败'.mysqli_connect_error($db);
} else {
    echo '连接成功';
}
mysqli_select_db($db, 'php60');  //选择要操作的数据库
mysqli_set_charset($db, 'utf8'); //设置客户端默认字符编码集

也可以合并部分函数:

demo1-2.php

<?php
//直接将参数写到连接字符串中
//使用多个函数,合并选择数据库和设置字符编码集
$db = @mysqli_connect('localhost', 'root', '168168', 'php60') or die ('连接失败'.mysqli_connect_error('php60'));
mysqli_set_charset('php60', 'utf8'); //设置客字符编码集

方法二:将函数参数定义为常量

demo2.php

<?php
header('content-type:text/html;charset=utf-8');
//将函数参数定义为常量
define ('DB_HOST', 'localhost'); //主机名
define ('DB_USER', 'root'); //用户名
define ('DB_PASS', '168168'); //密码
define ('DB_NAME', 'php60'); //数据库名
define ('DB_CHARSET', 'utf8'); //字符集编码

$db = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
if (mysqli_connect_errno($db)) {
    echo '连接失败'.mysqli_connect_error($db);
} else {
    echo '连接成功';
}
$db = @mysqli_connect(DB_HOST, DB_USER, DB_PASS,DB_NAME) or die ('连接失败'.mysqli_connect_error($db));
mysqli_set_charset($db, DB_CHARSET); //设置客户端默认字符编码集

方法三:拆分配置部分和连接部分为单独的文件

配置文件 config.php

<?php
//将函数参数定义为常量
define ('DB_HOST', 'localhost'); //主机名
define ('DB_USER', 'root'); //用户名
define ('DB_PASS', '168168'); //密码
define ('DB_NAME', 'php60'); //数据库名
define ('DB_CHARSET', 'utf8'); //字符集编码

连接文件 connect.php

<?php
//使用配置文件保存参数
require 'config.php';
$db = @mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
if (mysqli_connect_errno($db)) {
    echo '连接失败'.mysqli_connect_error($db);
} else {
    echo '连接成功';
}
mysqli_select_db($db, DB_NAME);  //选择要操作的数据库
mysqli_set_charset($db, DB_CHARSET); //设置客户端默认字符编码集

主页面 demo3.php

<?php
//使用连接文件连接数据库
require 'connect.php';

要进一步增强安全性,可以把config.php、connect.php文件保存到web目录以外的地方。


小结:以上三种方法都可以实现数据库的连接,从方法一到方法三,不断降低耦合度,实现代码的复用、模块化。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议