Qrcode Library
The library provides developers with the tools to generate Qr codes with ease. It is a total refactored version of the previous named yii2-qrcode-helper which was based on the ported PHP version of the libqrencode C library.
This new version is highly inspired by the great work of BaconQrCode, in fact, it uses a modified version of its code for the writers included on this package.
Getting Started
Supported PHP Versions
Tag | PHP Version |
---|---|
^ 3.0.2 | 7.3 - 8.0 |
3.1.0 | 7.4 - 8.1 |
Server Requirements
- PHP >= 7.4
- Imagick
- GD
- FreeType
The preferred way to install this extension is through composer.
Either run
php composer.phar require 2amigos/qrcode-library:^3.1.0
or add
{
...
"2amigos/qrcode-library": "^3.1.0"
}
Usage
The use of the library is quite easy when working as standalone. For example:
<?php
use Da\QrCode\QrCode;
$qrCode = (new QrCode('This is my text'))
->setSize(250)
->setMargin(5)
->setBackgroundColor(51, 153, 255);
// now we can display the qrcode in many ways
// saving the result to a file:
$qrCode->writeFile(__DIR__ . '/code.png'); // writer defaults to PNG when none is specified
// display directly to the browser
header('Content-Type: '.$qrCode->getContentType());
echo $qrCode->writeString();
?>
<?php
// or even as data:uri url
echo '<img src="' . $qrCode->writeDataUri() . '">';
?>
You can set the foreground color, defining RGBA values, where the alpha is optional.
$qrCode = (new QrCode('This is my text'))
->setForeground(0, 0, 0);
// or, setting alpha as well
$qrCode = (new QrCode('This is my text'))
->setForeground(0, 0, 0, 50);
Formats
In order to ease the task to write different formats into a QrCode, the library comes with a set of classes. These are:
- BookmarkFormat
- BtcFormat
- GeoFormat
- ICalFormat
- MailMessageFormat
- MailToFormat
- MeCardFormat
- MmsFormat
- PhoneFormat
- SmsFormat
- VCardFormat
- WifiFormat
- YoutubeFormat
Laravel
This library bundles a blade component and a file route to easily work with the Laravel framework.
Yii2
This library comes also with two special classes to specifically work with the Yii2 framework. These are:
Helpful Guides
Contributing
© 2amigos 2013-2023