演示网站:https://2fa.hk/tools/qr/generate_qr.php

在PHP环境下生成二维码是完全可行的,你可以使用一个PHP库来帮助你完成这个任务。PHP QR Code 是一个流行的库,能够在PHP中生成二维码。

1. 安装 PHP QR Code 库

首先,你需要下载并安装 PHP QR Code 库。你可以从 PHP QR Code 官方网站 或其 GitHub 页面 获取。

假设你已经下载了 phpqrcode 库并将其放置在你的项目中。

2. 使用 PHP 生成二维码

创建一个PHP页面,通过该页面传入链接并生成二维码图片。以下是一个简单的实现步骤:

  1. 安装/包含 QR Code 库 将 phpqrcode 解压缩并将 phpqrcode 文件夹包含在项目中。
  2. 生成二维码的 PHP 文件: generate_qr.php
connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 用于生成短链接的函数
function generateShortLink($longUrl) {
    // 创建一个随机的短URL标识符(通常是哈希算法或随机生成)
    $shortCode = substr(md5($longUrl), 0, 6);
    return $shortCode;
}

// 处理请求
if (isset($_POST['longUrl'])) {
    $longUrl = $_POST['longUrl'];
    $shortCode = generateShortLink($longUrl);

    // 存储到数据库
    $stmt = $conn->prepare("INSERT INTO urls (long_url, short_code) VALUES (?, ?)");
    $stmt->bind_param("ss", $longUrl, $shortCode);
    $stmt->execute();

    // 输出短链接
    echo "Short URL: http://yourdomain.com/" . $shortCode;
}

// 处理短链接的重定向
if (isset($_GET['code'])) {
    $shortCode = $_GET['code'];
    $stmt = $conn->prepare("SELECT long_url FROM urls WHERE short_code = ?");
    $stmt->bind_param("s", $shortCode);
    $stmt->execute();
    $stmt->bind_result($longUrl);
    $stmt->fetch();

    // 重定向到原始URL
    if ($longUrl) {
        header("Location: $longUrl");
    } else {
        echo "URL not found!";
    }
}
?>
 

3. 说明:

  • 步骤 1: 在页面顶部通过 include 引入 phpqrcode 库。
  • 步骤 2: 获取页面 URL 参数,url 为你希望生成二维码的链接,如果没有传入 url 参数,默认为 https://www.example.com。
  • 步骤 3: 使用 QRcode::png() 方法生成二维码,并将其保存到临时目录 temp_qr 中。
  • 步骤 4: 显示生成的二维码图片。

4. 使用方法:

  1. 将 phpqrcode 库的文件夹放置在你的项目目录下。
  2. 将上面的 generate_qr.php 文件放到你的 PHP 服务器上。
  3. 通过浏览器访问 generate_qr.php?url=你的链接,例如:
http://localhost/generate_qr.php?url=https://www.example.com
  1. 这样你就能看到生成的二维码,点击链接可以生成不同链接的二维码。

5. 示例:

  • 访问链接 http://localhost/generate_qr.php?url=https://www.google.com,页面会显示一个指向 Google 网站的二维码。

通过这种方式,你就可以在PHP环境中生成一个动态的二维码页面了,扫描二维码后,用户会被引导到指定的链接。