I QR Code sono molto utilizzati per condividere informazioni in modo rapido e leggibile tramite dispositivi mobili. In questo articolo vedremo come generare un QR Code utilizzando PHP.
1. Requisiti
Per generare un QR Code in PHP, possiamo utilizzare la libreria Endroid QR Code, una delle più popolari e mantenute. Per installarla, è necessario avere Composer installato nel proprio ambiente PHP.
Installazione con Composer
composer require endroid/qr-code
2. Creare un semplice QR Code
Dopo aver installato la libreria, possiamo generare un QR Code con poche righe di codice:
require __DIR__ . '/vendor/autoload.php';
use Endroid\QrCode\Builder\Builder;
header('Content-Type: image/png');
$result = Builder::create()
->data('https://esempio.com')
->size(300)
->margin(10)
->build();
echo $result->getString();
Questo script genera un QR Code contenente l'URL https://esempio.com
e lo restituisce direttamente come immagine PNG al browser.
3. Salvare il QR Code su disco
Se invece si desidera salvare il QR Code come file, si può modificare lo script in questo modo:
require __DIR__ . '/vendor/autoload.php';
use Endroid\QrCode\Builder\Builder;
$result = Builder::create()
->data('https://esempio.com')
->size(300)
->margin(10)
->build();
file_put_contents('qrcode.png', $result->getString());
Il QR Code verrà salvato nel file qrcode.png
nella directory corrente.
4. Personalizzazioni
La libreria consente diverse personalizzazioni, come il colore, il logo al centro, e il formato di output. Ecco un esempio con un logo:
use Endroid\QrCode\Logo\Logo;
use Endroid\QrCode\Writer\PngWriter;
$result = Builder::create()
->writer(new PngWriter())
->data('https://esempio.com')
->logoPath(__DIR__ . '/logo.png')
->size(300)
->margin(10)
->build();
$result->saveToFile(__DIR__ . '/qrcode_con_logo.png');
Assicurati che il file logo.png
esista e sia accessibile nel percorso specificato.
Conclusione
Generare QR Code con PHP è semplice ed efficace grazie a librerie come Endroid QR Code. Che tu voglia mostrare direttamente l'immagine sul browser o salvarla su disco, bastano poche righe di codice per integrare questa funzionalità nei tuoi progetti.