当前位置:首页 > PHP

php实现mysqli

2026-01-29 12:20:26PHP

php实现mysqli

php实现mysqli

使用PHP实现MySQLi连接数据库

MySQLi(MySQL improved)是PHP中用于与MySQL数据库交互的扩展,支持面向对象和面向过程两种编程风格。

面向对象方式连接MySQL

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>

面向过程方式连接MySQL

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";

// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接
if (!$conn) {
    die("连接失败: " . mysqli_connect_error());
}
echo "连接成功";
?>

执行查询操作

$sql = "SELECT id, name, email FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
} else {
    echo "0 结果";
}

预处理语句防止SQL注入

$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);

$name = "John Doe";
$email = "john@example.com";
$stmt->execute();

echo "新记录插入成功";
$stmt->close();

关闭数据库连接

$conn->close();

错误处理最佳实践

try {
    $conn = new mysqli($servername, $username, $password, $dbname);

    if ($conn->connect_errno) {
        throw new Exception("连接错误: " . $conn->connect_error);
    }

    // 执行数据库操作

} catch (Exception $e) {
    echo "数据库错误: " . $e->getMessage();
} finally {
    if (isset($conn)) {
        $conn->close();
    }
}

事务处理示例

$conn->autocommit(FALSE);

try {
    $conn->query("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1");
    $conn->query("UPDATE accounts SET balance = balance + 100 WHERE user_id = 2");

    $conn->commit();
    echo "事务成功完成";
} catch (Exception $e) {
    $conn->rollback();
    echo "事务失败: " . $e->getMessage();
}

MySQLi提供了比旧版MySQL扩展更安全、更高效的功能,特别是预处理语句和事务支持。建议在新项目中使用MySQLi或PDO扩展,避免使用已废弃的mysql_*函数。

标签: phpmysqli
分享给朋友:

相关文章

php实现栈

php实现栈

栈的基本概念 栈(Stack)是一种遵循后进先出(LIFO)原则的数据结构。核心操作包括: push:元素入栈。 pop:元素出栈(返回并移除栈顶元素)。 peek:查看栈顶元素(不移除…

php怎么实现登录功能

php怎么实现登录功能

数据库准备 创建用户表存储登录信息,通常包括用户名、密码(需加密)等字段。示例SQL: CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY…

php 实现排序

php 实现排序

PHP 实现数组排序的方法 PHP 提供了多种内置函数和方法来实现数组排序,适用于不同的排序需求。以下是一些常见的排序实现方式: 使用 sort() 函数对数组进行升序排序 sort() 函数对数组…

php搜索功能实现的

php搜索功能实现的

PHP 搜索功能实现方法 数据库搜索实现 使用 SQL 的 LIKE 语句进行模糊匹配,适用于小型网站和简单搜索需求。 $searchTerm = $_GET['search']; $query =…

php 实现类

php 实现类

PHP 类的基本实现 在 PHP 中,类通过 class 关键字定义,后跟类名和一对花括号。类名通常遵循大驼峰命名法(如 ClassName)。以下是基本语法: class ClassName {…

php 无限分类的实现

php 无限分类的实现

无限分类的实现方法 无限分类通常用于构建树形结构数据,如商品分类、多级菜单等。以下是几种常见的实现方式: 邻接列表模型(Adjacency List) 邻接列表是最简单的实现方式,通过在每个节点中存…