Генерация QR-кодов на PHP
PHP имеет отличные библиотеки для QR-кодов: endroid/qr-code для современных веб-приложений и chillerlan/php-qrcode для лёгкой генерации. Идеально для Laravel, Symfony и WordPress.
Установка
Установите PHP-библиотеки для QR-кодов с помощью Composer.
composer require endroid/qr-codecomposer require chillerlan/php-qrcodeГенерация QR-кодов с помощью библиотек PHP
Примеры кода с использованием популярных PHP-библиотек для QR-кодов.
<?php
use Endroid\QrCode\QrCode;
use Endroid\QrCode\Writer\PngWriter;
$qrCode = new QrCode('https://qrcode.fun');
$qrCode->setSize(300);
$qrCode->setMargin(10);
$writer = new PngWriter();
$result = $writer->write($qrCode);
// Save to file
$result->saveToFile('qrcode.png');
// Or output directly
header('Content-Type: ' . $result->getMimeType());
echo $result->getString();<?php
use Endroid\QrCode\QrCode;
use Endroid\QrCode\Logo\Logo;
use Endroid\QrCode\Color\Color;
use Endroid\QrCode\Writer\PngWriter;
use Endroid\QrCode\ErrorCorrectionLevel;
$qrCode = new QrCode(
data: 'https://qrcode.fun',
size: 300,
margin: 10,
foregroundColor: new Color(26, 43, 60),
backgroundColor: new Color(255, 255, 255),
errorCorrectionLevel: ErrorCorrectionLevel::High
);
$logo = new Logo(
path: 'logo.png',
resizeToWidth: 80
);
$writer = new PngWriter();
$result = $writer->write($qrCode, $logo);
$result->saveToFile('qrcode_logo.png');Генерация QR-кодов через API на PHP
Вызовите API QRCode.fun из PHP с помощью cURL или Guzzle.
<?php
$payload = json_encode([
'data' => 'https://qrcode.fun',
'width' => 300,
'height' => 300,
'type' => 'png',
'margin' => 10,
'dotsOptions' => ['color' => '#1A2B3C', 'type' => 'rounded'],
'cornersSquareOptions' => ['color' => '#8564C3', 'type' => 'extra-rounded'],
'backgroundOptions' => ['color' => '#FFFFFF'],
]);
$ch = curl_init('https://qrcode.fun/api/generate-qr-styled');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $payload,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
// $result['data'] contains the base64 PNG data URL
echo substr($result['data'], 0, 50);Предпросмотр QR-кода
Попробуйте сгенерировать QR-код на PHP прямо сейчас.
Нативная библиотека vs API
Сравните использование PHP-библиотеки для QR-кодов с API QRCode.fun.
| Функция | Нативная библиотека | QRCode.fun API |
|---|---|---|
| Сложность настройки | Composer install + GD/Imagick | Один HTTP-запрос через cURL |
| Кастомизация | Цвета, логотипы, метки (endroid) | Полное оформление: цвета, формы, логотипы |
| Офлайн-поддержка | Да | Требуется интернет |
| Обслуживание | Composer update | Всегда актуально |
| Форматы вывода | PNG, SVG, PDF (endroid) | PNG, SVG |
Сценарии использования QR-кодов в PHP
Типичные сценарии для QR-кодов в PHP-приложениях.
Laravel и Symfony
Генерируйте QR-коды в контроллерах Laravel или Symfony для профилей пользователей, двухфакторной аутентификации и платёжных ссылок.
Плагины WordPress
Создавайте плагины WordPress, генерирующие QR-коды для записей, товаров и пользовательских типов контента.
Электронная коммерция
Создавайте QR-коды для страниц товаров, платёжных шлюзов, отслеживания заказов и электронных чеков.
PDF-счета
Встраивайте QR-коды в PDF-счета с помощью TCPDF или FPDF для верификации платежей и связи документов.
Часто задаваемые вопросы
Популярные вопросы о генерации QR-кодов на PHP.
Начните генерировать QR-коды на PHP
Используйте наш бесплатный генератор или интегрируйте API в свои PHP-приложения.