以下是一个简单的PHP API接口示例,用于获取和保存用户信息。

<?php

// 定义常量
define('DB_HOST', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', 'password');
define('DB_NAME', 'mydatabase');

// 连接数据库
$conn = mysqli_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

// 检查连接是否成功
if (!$conn) {
    die("连接数据库失败: " . mysqli_connect_error());
}

// 设置响应头
header('Content-Type: application/json');

// 处理请求
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
    // 获取用户信息
    if (isset($_GET['id'])) {
        // 获取单个用户信息
        $id = mysqli_real_escape_string($conn, $_GET['id']);
        $query = "SELECT * FROM users WHERE id = $id";
        $result = mysqli_query($conn, $query);
        if (mysqli_num_rows($result) > 0) {
            $user = mysqli_fetch_assoc($result);
            echo json_encode($user);
        } else {
            http_response_code(404);
            echo json_encode(['message' => '用户不存在']);
        }
    } else {
        // 获取所有用户信息
        $query = "SELECT * FROM users";
        $result = mysqli_query($conn, $query);
        $users = mysqli_fetch_all($result, MYSQLI_ASSOC);
        echo json_encode($users);
    }
} elseif ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // 保存用户信息
    $data = json_decode(file_get_contents('php://input'), true);
    $name = mysqli_real_escape_string($conn, $data['name']);
    $email = mysqli_real_escape_string($conn, $data['email']);
    $password = mysqli_real_escape_string($conn, $data['password']);
    $query = "INSERT INTO users (name, email, password) VALUES ('$name', '$email', '$password')";
    if (mysqli_query($conn, $query)) {
        http_response_code(201);
        echo json_encode(['message' => '用户创建成功']);
    } else {
        http_response_code(400);
        echo json_encode(['message' => '用户创建失败']);
    }
} elseif ($_SERVER['REQUEST_METHOD'] == 'PUT') {
    // 更新用户信息
    $data = json_decode(file_get_contents('php://input'), true);
    $id = mysqli_real_escape_string($conn, $data['id']);
    $name = mysqli_real_escape_string($conn, $data['name']);
    $email = mysqli_real_escape_string($conn, $data['email']);
    $password = mysqli_real_escape_string($conn, $data['password']);
    $query = "UPDATE users SET name='$name', email='$email', password='$password' WHERE id=$id";
    if (mysqli_query($conn, $query)) {
        http_response_code(200);
        echo json_encode(['message' => '用户更新成功']);
    } else {
        http_response_code(400);
        echo json_encode(['message' => '用户更新失败']);
    }
} elseif ($_SERVER['REQUEST_METHOD'] == 'DELETE') {
    // 删除用户信息
    $data = json_decode(file_get_contents('php://input'), true);
    $id = mysqli_real_escape_string($conn, $data['id']);
    $query = "DELETE FROM users WHERE id=$id";
    if (mysqli_query($conn, $query)) {
        http_response_code(200);
        echo json_encode(['message' => '用户删除成功']);
    } else {
        http_response_code(400);
        echo json_encode(['message' => '用户删除失败']);
    }
}

// 关闭连接
mysqli_close($conn);

这个API接口使用了HTTP方法来处理不同的请求类型,GET用于获取数据,POST用于创建数据,PUT用于更新数据,DELETE用于删除数据。它还使用了JSON格式的数据传输,并使用了mysqli函数来与MySQL数据库交互。

用PHP写一份APi接口

原文地址: https://www.cveoy.top/t/topic/ERA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录