Skip to content
 
 

Latest commit

 

History

46 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QR Platba

Latest Stable Version Total Downloads Build Status Coverage Status

Knihovna pro generování QR plateb v PHP. QR platba zjednodušuje koncovému uživateli provedení příkazu k úhradě, protože obsahuje veškeré potřebné údaje, které stačí jen naskenovat. Nově lze použít i jiné měny než CZK a to pomocí metody setCurrenty($currency).

Tato knihovna umožňuje:

  • zobrazení obrázku v <img> tagu, který obsahuje v src rovnou data-uri s QR kódem, takže vygenerovaný obrázek tak není třeba ukládat na server ($qrPlatba->getQRCodeImage())
  • uložení obrázku s QR kódem ($qrPlatba->saveQRCodeImage())
  • získání data-uri ($qrPlatba->getQRCodeInstance()->getDataUri())
  • získání instance objektu QrCode ($qrPlatba->getQRCodeInstance())

QRPlatbu v současné době podporují tyto banky: Air Bank, Česká spořitelna, ČSOB, Equa bank, Era, Fio banka, Komerční banka, mBank, Raiffeisenbank, ZUNO.

Podporuje PHP 5.6 až 7.2.

UW Richard modifikovaná verze podporuje pouze >=7.2

Instalace pomocí Composeru

composer require dfridrich/qr-platba composer require uw-richard/qr-platba pro upravenou verzi pro endroid/qr-code:^3 a PHP >= 7.2

Příklad

<?php

require __DIR__ . '/vendor/autoload.php';

use Defr\QRPlatba\QRInvoice;

$qrInvoice = new QRInvoice();

$qrInvoice->setAccount('12-3456789012/0100')
    ->setVariableSymbol('2016001234')
    ->setMessage('Toto je první QR platba.')
    ->setSpecificSymbol('0308')
    ->setSpecificSymbol('1234')
    ->setCurrency('CZK') // Výchozí je CZK, lze zadat jakýkoli ISO kód měny
    ->setDueDate(new \DateTime());

echo $qrInvoice->getQRCodeImage(); // Zobrazí <img> tag s kódem, viz níže  

Ukázka

Lze použít i jednodušší zápis:

echo QRInvoice::create('12-3456789012/0100', 987.60)
    ->setMessage('QR platba je parádní!')
    ->getQRCodeImage();

Další možnosti

Uložení do souboru

// Uloží png o velikosti 100x100 px
$qrInvoice->saveQRCodeImage("qrcode.png", "png", 100);

// Uloží svg o velikosti 100x100 px
$qrInvoice->saveQRCodeImage("qrcode.svg", "svg", 100);

Aktuální možné formáty jsou:

  • Png
  • Svg
  • Eps
  • binární

Pro další je potřeba dopsat vlastní Writter

Zobrazení data-uri

// data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAAFAAQMAAAD3XjfpAAAA...
echo $qrInvoice->getQRCodeInstance()->writeDataUri();

Odkazy

Contributing

Budu rád za každý návrh na vylepšení ať už formou issue nebo pull requestu.

About

Knihovna pro generování QR plateb v PHP

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages