Açıklama Yok

smiley 3783ef7b0f :sparkles: RTFD! 2 yıl önce
.github 2b4345e58c :octocat: 2 yıl önce
.idea abfd69e44a :octocat: 2 yıl önce
.phan d4887f2676 :wrench: 2 yıl önce
.phpdoc 2f403df971 :sparkles: 2 yıl önce
docs 3783ef7b0f :sparkles: RTFD! 2 yıl önce
examples 1423638fa0 :sparkles: reflectance reversal example 2 yıl önce
src efb829c4a6 :octocat: fully support reflectance reversal 2 yıl önce
tests edbc995b63 :wrench: fixed QRImagick module value validation 2 yıl önce
.editorconfig 826f9cfa65 :octocat: 2 yıl önce
.gitignore 826f9cfa65 :octocat: 2 yıl önce
.readthedocs.yml 6a44b067ef :sparkles: fuck it, read the docs 2 yıl önce
.scrutinizer.yml b0fb84f578 :shower: 3 yıl önce
LICENSE-ASL-2.0 66c0b69ffb :octocat: added Apache-2.0 license 3 yıl önce
LICENSE-MIT 66c0b69ffb :octocat: added Apache-2.0 license 3 yıl önce
NOTICE 66c0b69ffb :octocat: added Apache-2.0 license 3 yıl önce
README.md 6921675d45 :octocat: rename workflow 2 yıl önce
composer.json 4be0a800dd :octocat: authenticator example 2 yıl önce
phpcs.xml.dist ffb2aa026f :octocat: 2 yıl önce
phpdoc.xml.dist 61bf95856a :octocat: 2 yıl önce
phpmd.xml.dist 5c37096c9d :octocat: 2 yıl önce
phpunit.xml.dist cf4e5a7eaa :octocat: added phpunit constant to limit reader test maximum version 2 yıl önce

README.md

chillerlan/php-qrcode

A PHP QR Code generator based on the implementation by Kazuhiko Arase, namespaced, cleaned up, improved and other stuff. It also features a QR Code reader based on a PHP port of the ZXing library.

Hi! Please check out the v5.0-beta release and leave your feedback in this discussion thread. Thanks!

Attention: there is now also a javascript port: chillerlan/js-qrcode.

PHP Version Support Packagist version Continuous Integration CodeCov Codacy Packagist downloads

Features

  • Creation of Model 2 QR Codes, Version 1 to 40
  • ECC Levels L/M/Q/H supported
  • Mixed mode support (encoding modes can be combined within a QR symbol). Supported modes:
    • numeric
    • alphanumeric
    • 8-bit binary
    • 13-bit double-byte kanji (Japanese, Shift-JIS) and hanzi (simplified Chinese, GB2312/GB18030) as defined in GBT18284-2000
  • Flexible, easily extensible output modules, built-in support for the following output formats:
    • GdImage
    • ImageMagick
    • Markup types: SVG, HTML, etc.
    • String types: JSON, plain text, etc.
    • Encapsulated Postscript (EPS)
    • PDF via FPDF
  • QR Code reader (via GD and ImageMagick)

Documentation

See the wiki for advanced documentation. An API documentation created with phpDocumentor can be found at https://chillerlan.github.io/php-qrcode/ (WIP). The documentation for QROptions container can be found here: chillerlan/php-settings-container.

Requirements

For the QRCode reader, either ext-gd or ext-imagick is required!

Installation

requires composer

via terminal:

composer require chillerlan/php-qrcode

via composer.json:

{
	"require": {
		"php": "^7.4 || ^8.0",
		"chillerlan/php-qrcode": "dev-main#<commit_hash>"
	}
}

Note: replace dev-main with a version constraint, e.g. ^4.3 - see releases for valid versions. See the installation guide on the wiki for more info!

Quickstart

We want to encode this URI for a mobile authenticator into a QRcode image:

$data = 'otpauth://totp/test?secret=B3JX4VCVJDVNXNZ5&issuer=chillerlan.net';

// quick and simple:
echo '<img src="'.(new QRCode)->render($data).'" alt="QR Code" />';

QR codes are awesome!

Wait, what was that? Please again, slower! See Advanced usage on the wiki. Also, have a look in the examples folder for some more usage examples.

Reading QR Codes

Using the built-in QR Code reader is pretty straight-forward:

$result = (new QRCode)->readFromFile('path/to/file.png'); // -> DecoderResult

// you can now use the result instance...
$content = $result->data;
$matrix  = $result->getMatrix(); // -> QRMatrix

// ...or simply cast it to string to get the content:
$content = (string)$result;

It's generally a good idea to wrap the reading in a try/catch block to handle any errors that may occur in the process.

Framework Integration

Shameless advertising

Hi, please check out my other projects that are way cooler than qrcodes!

Disclaimer!

I don't take responsibility for molten CPUs, misled applications, failed log-ins etc.. Use at your own risk!

License notice

Parts of this code are ported to PHP from the ZXing project and licensed under the Apache License, Version 2.0.

Trademark Notice

The word "QR Code" is a registered trademark of DENSO WAVE INCORPORATED
https://www.qrcode.com/en/faq.html#patentH2Title