PHP封装自己的DB类实现对数据库的CURD操作(适用于入门学习)
新建一个文件夹包括一下几个文件:mySqlConfig.php、mySqlFunction.php、show.php
mySqlConfig.php:
//定义常量,配置自己的数据库相关信息
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PWD', 'root');
define('DB_CHARSET', 'UTF8');
define('DB_DBNAME', 'DBname');
mySqlFunction.php:
<?php
class DB
{
/**
* 连接MYSQL函数
* 连接MYSQL函数,通过常量的形式来连接数据库
* 自定义配置文件,配置文件中自定义常量,包含需要使用的信息
* @return resource
*/
function connect()
{
//连接mysql
$link = mysqli_connect(DB_HOST, DB_USER, DB_PWD) or die('数据库连接失败<br/>ERROR ' . mysqli_error() . ':' . mysqli_error());
//设置字符集
mysqli_set_charset($link, DB_CHARSET);
//打开指定的数据库
mysqli_select_db($link, DB_DBNAME) or die('指定的数据库打开失败');
return $link;
}
/**
* 插入一条记录
* @param string $sql
* @param obj $link
* @return string
*/
function insert($link, $sql)
{
if (mysqli_query($link, $sql)) {
echo "插入数据成功";
} else {
echo "Error insert data: " . $link->error;
}
}
/**
* 更新一条记录
* @param string $sql
* @param obj $link
* @return string
*/
function update($link, $sql)
{
if (mysqli_query($link, $sql)) {
echo "更新数据成功";
} else {
echo "Error update data: " . $link->error;
}
}
/**
* 查询一条记录
* @param string $sql
* @param string $result_type
* @param obj $link
* @return string|boolean
*/
function fetchOne($sql, $link, $result_type = MYSQLI_ASSOC)
{
$result = mysqli_query($link, $sql);
if ($result && mysqli_num_rows($result) > 0) {
return mysqli_fetch_array($result, $result_type);
} else {
return false;
}
}
/**
* 得到表中的所有记录
* @param string $sql
* @param string $result_type
* @param obj $link
* @return array|boolean
*/
function fetchAll($sql, $link, $result_type = MYSQLI_ASSOC)
{
$result = mysqli_query($link, $sql);
if ($result && mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_array($result, $result_type)) {
$rows[] = $row;
}
return $rows;
} else {
return false;
}
}
/**取得结果集中的记录的条数
* @param string $sql
* @param obj $link
* @return number|boolean
*/
function getTotalRows($sql, $link)
{
$result = mysqli_query($link, $sql);
if ($result) {
return mysqli_num_rows($result);
} else {
return false;
}
}
}
show.php:
<!DOCTYPE html>
<head>
</head>
<body>
<?php
require_once 'mySqlFunction.php';
require_once 'mySqlConfig.php';
$db = new DB();
$link = $db->connect();
$sql = "SELECT * FROM tp_article";
$rows = $db->fetchAll($sql, $link);
echo "<table border='1' align='center'>";
echo "<tr><td width='80px'>标题</td><td width='90px'>作者</td></tr>";
foreach ($rows as $val) {
echo "<tr><td>" . $val['title'] . "</td><td>" . $val['author'] . "</td></tr>";
}
echo "</table>";
?>
</body>
</html>
数据库数据表情况: 打印结果情况:
这样原生的php操作数据库实现基本的CURD就实现啦~