Maison développement back-end tutoriel php Comment générer un code QR avec limite de temps en utilisant PHP ?

Comment générer un code QR avec limite de temps en utilisant PHP ?

Aug 26, 2023 pm 04:34 PM
php 二维码 生成 délai

Comment générer un code QR avec limite de temps en utilisant PHP ?

Comment utiliser PHP pour générer un QR code avec limite de temps ?

Avec la popularité des paiements mobiles et des billets électroniques, les codes QR sont devenus une technologie courante. Dans de nombreux scénarios, nous pouvons avoir besoin de générer un code QR avec une limite de temps, qui deviendra invalide même après un certain temps. Cet article explique comment utiliser PHP pour générer un code QR à durée limitée et fournit des exemples de code à titre de référence.

  1. Installer la bibliothèque PHP QR Code

Pour utiliser PHP pour générer des codes QR, nous devons d'abord installer la bibliothèque PHP QR Code. Cette bibliothèque est une bibliothèque de classes PHP open source qui peut facilement générer des codes QR. Vous pouvez télécharger le package d'installation à l'URL suivante : https://github.com/t0k4rt/phpqrcode

Après avoir téléchargé le package d'installation, extrayez-le dans le répertoire du serveur et assurez-vous que votre application PHP peut accéder au répertoire.

  1. Générer un texte limité dans le temps

Avant de générer un code QR limité dans le temps, nous devons d'abord générer un texte limité dans le temps. Ce texte peut contenir certaines informations telles que l'heure d'expiration, les données cryptées, etc.

Voici un exemple de code simple :

// 生成带有时间限制的文本
$expireTimestamp = time() + 3600; // 设置二维码过期时间为1小时
$data = 'This is the data you want to encode. Expire time: ' . $expireTimestamp;
Copier après la connexion

Dans le code ci-dessus, nous utilisons la fonction time() pour obtenir l'horodatage actuel et ajouter les secondes d'1 heure comme heure d'expiration. Concaténez ensuite les données à encoder et le délai d'expiration dans une chaîne. time()函数获取当前的时间戳,并加上1小时的秒数作为过期时间。然后将要编码的数据和过期时间拼接成一个字符串。

  1. 生成二维码

在生成带有时间限制的文本之后,我们可以使用PHP QR Code库生成相应的二维码。

以下是一个简单的示例代码:

// 引入QR Code库
require_once('path/to/phpqrcode/qrlib.php');

// 生成二维码
$qrCodePath = 'path/to/qr_codes/qrcode.png'; // 生成的二维码保存路径
QRcode::png($data, $qrCodePath, QR_ECLEVEL_L, 10);
Copier après la connexion

在上述代码中,我们首先使用require_once语句引入PHP QR Code库的代码。然后使用QRcode::png()方法生成二维码。该方法的参数依次为需要编码的文本、生成的二维码路径、纠错级别(QR_ECLEVEL_L表示纠错级别为L级)、二维码像素大小。

  1. 验证二维码是否过期

生成二维码之后,我们需要在扫描二维码时对其进行验证,判断二维码是否已经过期。

以下是一个简单的示例代码:

// 验证二维码是否过期
$qrCodePath = 'path/to/qr_codes/qrcode.png'; // 生成的二维码保存路径
$expireTimestamp = time() + 3600; // 设置二维码过期时间为1小时
if (file_exists($qrCodePath) && filemtime($qrCodePath) < $expireTimestamp) {
    // 二维码未过期
    echo 'QR Code is still valid.';
} else {
    // 二维码已过期
    echo 'QR Code has expired.';
}
Copier après la connexion

在上述代码中,我们使用file_exists()函数检查生成的二维码文件是否存在,并使用filemtime()

    Générer le code QR

    Après avoir généré le texte avec limite de temps, nous pouvons utiliser la bibliothèque PHP QR Code pour générer le code QR correspondant.

    🎜Ce qui suit est un exemple de code simple : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons d'abord l'instruction require_once pour introduire le code de la bibliothèque PHP QR Code. Utilisez ensuite la méthode QRcode::png() pour générer un code QR. Les paramètres de cette méthode sont le texte à encoder, le chemin du code QR généré, le niveau de correction d'erreur (QR_ECLEVEL_L signifie que le niveau de correction d'erreur est L) et la taille en pixels du code QR. 🎜
      🎜Vérifiez si le code QR a expiré🎜🎜🎜Après avoir généré le code QR, nous devons le vérifier lors de la numérisation du code QR pour déterminer si le code QR a expiré. 🎜🎜Ce qui suit est un exemple de code simple : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons la fonction file_exists() pour vérifier si le fichier de code QR généré existe, et utilisons filemtime() récupère l'heure de modification d'un fichier. Comparez ensuite l'horodatage actuel avec l'heure d'expiration pour déterminer si le code QR a expiré. 🎜🎜Résumé : 🎜🎜Cet article présente comment utiliser PHP pour générer un code QR avec une limite de temps. Installez d'abord la bibliothèque PHP QR Code, puis générez du texte avec des limites de temps, puis utilisez les méthodes de la bibliothèque pour générer des codes QR. Lors de la numérisation d'un code QR, vous pouvez vérifier si le code QR a expiré en comparant l'heure de modification et l'heure d'expiration du fichier de code QR. J'espère que cet article pourra vous aider à appliquer cette technologie dans des projets réels. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

CakePHP travaillant avec la base de données CakePHP travaillant avec la base de données Sep 10, 2024 pm 05:25 PM

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

See all articles