Overview.md.txt 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. # Overview
  2. A PHP QR Code generator based on the [implementation by Kazuhiko Arase](https://github.com/kazuhikoarase/qrcode-generator), namespaced, cleaned up, improved and other stuff.
  3. It also features a QR Code reader based on a [PHP port](https://github.com/khanamiryan/php-qrcode-detector-decoder) of the [ZXing library](https://github.com/zxing/zxing).
  4. ## Features
  5. - Creation of [Model 2 QR Codes](https://www.qrcode.com/en/codes/model12.html), [Version 1 to 40](https://www.qrcode.com/en/about/version.html)
  6. - [ECC Levels](https://www.qrcode.com/en/about/error_correction.html) L/M/Q/H supported
  7. - Mixed mode support (encoding modes can be combined within a QR symbol). Supported modes:
  8. - numeric
  9. - alphanumeric
  10. - 8-bit binary
  11. - [ECI support](https://en.wikipedia.org/wiki/Extended_Channel_Interpretation)
  12. - 13-bit double-byte:
  13. - kanji (Japanese, Shift-JIS)
  14. - hanzi (simplified Chinese, GB2312/GB18030) as [defined in GBT18284-2000](https://www.chinesestandard.net/PDF/English.aspx/GBT18284-2000)
  15. - Flexible, easily extensible output modules, built-in support for the following output formats:
  16. - [GdImage](https://www.php.net/manual/book.image) (raster graphics: avif, bmp, gif, jpeg, png, webp)
  17. - [ImageMagick](https://www.php.net/manual/book.imagick) ([multiple supported image formats](https://imagemagick.org/script/formats.php))
  18. - Markup types: SVG, HTML, etc.
  19. - String types: JSON, plain text, etc.
  20. - Encapsulated Postscript (EPS)
  21. - PDF via [FPDF](https://github.com/setasign/fpdf)
  22. - QR Code reader (via GD and ImageMagick)
  23. ## Requirements
  24. - PHP 8.2+
  25. - [`ext-mbstring`](https://www.php.net/manual/book.mbstring.php)
  26. - optional:
  27. - [`ext-gd`](https://www.php.net/manual/book.image)
  28. - [`ext-imagick`](https://github.com/Imagick/imagick) with [ImageMagick](https://imagemagick.org) installed
  29. - [`ext-fileinfo`](https://www.php.net/manual/book.fileinfo.php) (required by `QRImagick` output)
  30. - [`setasign/fpdf`](https://github.com/setasign/fpdf) for the PDF output module
  31. - [`intervention/image`](https://github.com/Intervention/image) for alternative GD/ImageMagick output
  32. For the QR Code reader, either `ext-gd` or `ext-imagick` is required!
  33. ## Framework Integration
  34. - CakePHP:
  35. - [QrCode plugin](https://github.com/dereuromark/cakephp-qrcode)
  36. - Drupal:
  37. - [Two-factor Authentication `tfa`](https://www.drupal.org/project/tfa) (Drupal 8+)
  38. - [Google Authenticator Login `ga_login`](https://www.drupal.org/project/ga_login) (deprecated, Drupal 7)
  39. - Laravel:
  40. - [Filament](https://github.com/filamentphp/filament)
  41. - Symfony:
  42. - [phpqrcode-bundle](https://github.com/jonasarts/phpqrcode-bundle)
  43. - WoltLab Suite:
  44. - [two-step-verification](http://pluginstore.woltlab.com/file/3007-two-step-verification/)
  45. - [[Developer] PHP QR Code](https://www.woltlab.com/pluginstore/file/7995-entwickler-php-qr-code/)
  46. - WordPress:
  47. - [wp-two-factor-auth](https://github.com/sjinks/wp-two-factor-auth)
  48. - [simple-2fa](https://wordpress.org/plugins/simple-2fa/)
  49. - [floating-share-button](https://github.com/qriouslad/floating-share-button)
  50. - other uses:
  51. - [dependents](https://github.com/chillerlan/php-qrcode/network/dependents) / [packages](https://github.com/chillerlan/php-qrcode/network/dependents?dependent_type=PACKAGE)
  52. - [Appwrite](https://github.com/appwrite/appwrite)
  53. - [Cachet](https://github.com/CachetHQ/Cachet)
  54. - [GÉANT CAT](https://github.com/GEANT/CAT)
  55. - [Elefant CMS](https://github.com/jbroadway/elefant)
  56. - [EspoCRM](https://github.com/espocrm/espocrm)
  57. - [FusionCMS](https://github.com/FusionWowCMS/FusionCMS)
  58. - [HortusFox](https://github.com/danielbrendel/hortusfox-web)
  59. - [Laravel Boleto](https://github.com/eduardokum/laravel-boleto)
  60. - [LORIS](https://github.com/aces/Loris)
  61. - [OpenBoleto](https://github.com/openboleto/openboleto)
  62. - [openITCOCKPIT](https://github.com/it-novum/openITCOCKPIT)
  63. - [OSIRIS](https://github.com/JKoblitz/osiris)
  64. - [Pelican Panel](https://github.com/pelican-dev/panel)
  65. - [twill](https://github.com/area17/twill)
  66. - Articles:
  67. - [Twilio: How to Create a QR Code in PHP](https://www.twilio.com/blog/create-qr-code-in-php) (featuring v4.3.x)
  68. ## Shameless advertising
  69. Hi, please check out some of my other projects that are way cooler than qrcodes!
  70. - [js-qrcode](https://github.com/chillerlan/js-qrcode) - a javascript port of this library
  71. - [php-authenticator](https://github.com/chillerlan/php-authenticator) - a Google Authenticator implementation (see [authenticator example](https://github.com/chillerlan/php-qrcode/blob/main/examples/authenticator.php))
  72. - [php-httpinterface](https://github.com/chillerlan/php-httpinterface) - a PSR-7/15/17/18 implemetation
  73. - [php-oauth](https://github.com/chillerlan/php-oauth) - an OAuth 1/2 client library, fully PSR-7/PSR-17/PSR-18 compatible
  74. - [php-database](https://github.com/chillerlan/php-database) - a database client & querybuilder for MySQL, Postgres, SQLite, MSSQL, Firebird
  75. - [php-tootbot](https://github.com/php-tootbot/tootbot-template) - a Mastodon bot library