1639205721
この投稿では、PHPで最も簡単な方法でQRコードを生成する方法を学びます。
QRコードはクイックレスポンスコードの略です。当初は自動車産業向けに開発されましたが、その後、幅広い用途で広く使用されています。これを使用することで、大量の情報、スマートカードデータ、消費者広告、WebサイトのURL、電話番号、記事などを、2次元のマトリックスバーコードに置き換えることができます。任意のテキストの最大4,296文字の英数字を保存できます。生成されたコードは、光学式スマートデバイスを使用してQRコードリーダーソフトウェアで読み取ることができます。PHPには、QRコードを生成するためのライブラリがいくつか用意されています。PHPではQRコードの生成は非常に簡単です。
ここでは、QRコードライブラリを使用しています。PHP QRコードは、QRコード、2次元バーコードを生成するためのオープンソースライブラリです。これを使用するには、最初にGithubからQRコードライブラリをダウンロードするか、ここからダウンロードできます-
フォルダをダウンロードして解凍し、解凍したフォルダを実行する適切なプロジェクトディレクトリに配置します。次に、phpqrcodeフォルダーを配置したのと同じフォルダーにPHPファイルを作成します。' png() 'という名前の関数を使用するには、 ' qrlib.php 'ファイルを含める必要があります。この関数は、パラメータとしてテキストを渡すときにブラウザに直接QRコードを出力するQRcodeクラス内にあります。
QRcode::png(text, file, ecc, pixel_size, frame_size);
text
-QRコードに含める必要のあるテキストメッセージfile
-生成されたQRコードを保存する場所-QRコードecc
のエラー訂正機能を指定するには、L、M、Q、Hの4つのレベルpixel_size
があります-指定しますQRのピクセルサイズ、-QRframe_size
のサイズを指定します。
指定されたコードをコピーしてPHPファイルに貼り付け、コンテンツ変数の値を置き換えます。
<?php
include "phpqrcode/qrlib.php" ;
$content = "http://www.etutorialspoint.com/" ;
QRcode::png($content) ;
?>
上記のコードを実行すると、このQRコードが取得されます。
したがって、これは、URLを手動で入力するのではなく、QRコードスキャナーを使用してブランドのWebサイトにすばやくアクセスする方法です。
2番目の例では、tc-lib-barcodeライブラリを使用して、テキスト文字列のQRCodeを生成しています。このライブラリの出力形式は、PNG画像、SVG画像、HTML DIY、Unicode文字列、またはバーコード文字列です。ここでは、composerを使用してtc-lib-barcodeライブラリをインストールしています。したがって、ターミナルウィンドウを開き、プロジェクトディレクトリに移動し、次のコマンドを実行してこのライブラリをインストールします。
composer require tecnickcom/tc-lib-barcode
与えられたスクリーンショットのように、tc-lib-barcodeライブラリのインストールを見ることができます。これには、線形および2次元バーコードを生成するためのユーティリティPHPクラスが含まれます。
URL文字列のQRCodeを生成するためのソースコードは次のとおりです-
<?php
// Include the library in your project
require ('vendor/autoload.php');
// Instantiate the library class
$barcode = new \Com\Tecnick\Barcode\Barcode();
$dir = "qr-code/";
// Directory to store barcode
if (! is_dir($dir)) {
mkdir($dir, 0777, true);
}
// data string to encode
$source = "https://www.etutorialspoint.com/";
// ser properties
$qrcodeObj = $barcode->getBarcodeObj('QRCODE,H', $source, - 16, - 16, 'black', array(
- 2,
- 2,
- 2,
- 2
))->setBackgroundColor('#f5f5f5');
// generate qrcode
$imageData = $qrcodeObj->getPngData();
$timestamp = time();
//store in the directory
file_put_contents($dir . $timestamp . '.png', $imageData);
//Output image to the browser
echo '<img src="'.$dir . $timestamp.'".png" width="200px" height="200px">';
?>
上記のコード実行で次の出力を受け取ります-
1639205721
この投稿では、PHPで最も簡単な方法でQRコードを生成する方法を学びます。
QRコードはクイックレスポンスコードの略です。当初は自動車産業向けに開発されましたが、その後、幅広い用途で広く使用されています。これを使用することで、大量の情報、スマートカードデータ、消費者広告、WebサイトのURL、電話番号、記事などを、2次元のマトリックスバーコードに置き換えることができます。任意のテキストの最大4,296文字の英数字を保存できます。生成されたコードは、光学式スマートデバイスを使用してQRコードリーダーソフトウェアで読み取ることができます。PHPには、QRコードを生成するためのライブラリがいくつか用意されています。PHPではQRコードの生成は非常に簡単です。
ここでは、QRコードライブラリを使用しています。PHP QRコードは、QRコード、2次元バーコードを生成するためのオープンソースライブラリです。これを使用するには、最初にGithubからQRコードライブラリをダウンロードするか、ここからダウンロードできます-
フォルダをダウンロードして解凍し、解凍したフォルダを実行する適切なプロジェクトディレクトリに配置します。次に、phpqrcodeフォルダーを配置したのと同じフォルダーにPHPファイルを作成します。' png() 'という名前の関数を使用するには、 ' qrlib.php 'ファイルを含める必要があります。この関数は、パラメータとしてテキストを渡すときにブラウザに直接QRコードを出力するQRcodeクラス内にあります。
QRcode::png(text, file, ecc, pixel_size, frame_size);
text
-QRコードに含める必要のあるテキストメッセージfile
-生成されたQRコードを保存する場所-QRコードecc
のエラー訂正機能を指定するには、L、M、Q、Hの4つのレベルpixel_size
があります-指定しますQRのピクセルサイズ、-QRframe_size
のサイズを指定します。
指定されたコードをコピーしてPHPファイルに貼り付け、コンテンツ変数の値を置き換えます。
<?php
include "phpqrcode/qrlib.php" ;
$content = "http://www.etutorialspoint.com/" ;
QRcode::png($content) ;
?>
上記のコードを実行すると、このQRコードが取得されます。
したがって、これは、URLを手動で入力するのではなく、QRコードスキャナーを使用してブランドのWebサイトにすばやくアクセスする方法です。
2番目の例では、tc-lib-barcodeライブラリを使用して、テキスト文字列のQRCodeを生成しています。このライブラリの出力形式は、PNG画像、SVG画像、HTML DIY、Unicode文字列、またはバーコード文字列です。ここでは、composerを使用してtc-lib-barcodeライブラリをインストールしています。したがって、ターミナルウィンドウを開き、プロジェクトディレクトリに移動し、次のコマンドを実行してこのライブラリをインストールします。
composer require tecnickcom/tc-lib-barcode
与えられたスクリーンショットのように、tc-lib-barcodeライブラリのインストールを見ることができます。これには、線形および2次元バーコードを生成するためのユーティリティPHPクラスが含まれます。
URL文字列のQRCodeを生成するためのソースコードは次のとおりです-
<?php
// Include the library in your project
require ('vendor/autoload.php');
// Instantiate the library class
$barcode = new \Com\Tecnick\Barcode\Barcode();
$dir = "qr-code/";
// Directory to store barcode
if (! is_dir($dir)) {
mkdir($dir, 0777, true);
}
// data string to encode
$source = "https://www.etutorialspoint.com/";
// ser properties
$qrcodeObj = $barcode->getBarcodeObj('QRCODE,H', $source, - 16, - 16, 'black', array(
- 2,
- 2,
- 2,
- 2
))->setBackgroundColor('#f5f5f5');
// generate qrcode
$imageData = $qrcodeObj->getPngData();
$timestamp = time();
//store in the directory
file_put_contents($dir . $timestamp . '.png', $imageData);
//Output image to the browser
echo '<img src="'.$dir . $timestamp.'".png" width="200px" height="200px">';
?>
上記のコード実行で次の出力を受け取ります-