Разработка сайтов на WordPress и фреймворке Yii2

Здесь вы можете заказать полный пакет услуг по разработке сайта. Начиная от написания ТЗ до программирования на PHP, JavaScript и верстке.

Как сгенерировать QR код для сайта

Как сгенерировать QR код для сайта

В этой небольшой статье, рассмотрим один способ генерации QR кода на PHP.
Согласно «мозгу» нашего интернета (wikipedia) который врет но редко :), QR код это:

QR-код (англ. Quick Response Code — код быстрого реагирования; сокр. QR code) — товарный знак для типа матричных штрихкодов (или двумерных штрихкодов), изначально разработанных для автомобильной промышленности Японии.

Но а если проще, то QR код, это картинка содержащая штрихкод квадратной формы. Прочитать который можно мобильным телефоном (с установленным ПО) или специальным техническим средством.

Перейдем к делу

Мы не будем придумывать велосипед, а для генерации QR кода на PHP будем использовать готовую библиотеку «phpqrcode» (спасибо автор!). Библиотеку можно скачать с гитхаба по этой ссылке.
Библиотека «легкая» и имеет всего лишь пару десятков файлов, занимающих в общей сумме чуть больше 250 кб.

Как использовать библиотеку phpqrcode

Загруженную библиотеку нужно распаковать на сервере. В архиве, расположен index.php файл, с примером работы. При желании можно побаловаться с размерами QR кода и ECC уровнем (отвечающим как я понимаю за качество).

Библиотека позволяет создавать QR код в нескольких форматах:

  • png
  • svg
  • eps
  • в виде текста

В качестве примера, разберем генерацию png изображения с QR кодом. Есть два варианта решения данной задачи:

  1. Отобразить результат сразу же в браузере (это может пригодится при генерации штрихкода по ссылке)
  2. Сохранять сгенерированное изображение в каталог

Для первого и второго варианта будет использоваться следующий код:

QRcode::png($text, $outfile, $level, $size, $margin, $saveandprint, $back_color, $fore_color);

где:
$text — текст для «шифрования» в QR коде
$outfile — каталог, в котором будут сохраняться созданные штрих-коды (если указано false, то код будет отображен сразу в браузере как обычное изображение)
$level — уровень
$size — размер
$margin — отступы от краев изображения
$saveandprint — при установленном в false, не отправляет заголовок «Content-type: image/png» при генерации
$back_color — задний фон кода
$fore_color — фот точек штрихкода

На этом все. Спасибо!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *