Cómo generar código QR en Laravel 9
A veces se necesita un código QR para la identidad del producto, el inventario y otros. Entonces, ¿cómo generar un QRcode? es fácil, podemos usar Simple QRcode para crear QRcode en el marco de laravel.
Hoy en día, todos sabemos cuánto se usa el código QR. El código QR es simplemente una imagen cifrada de algún contenido que no es legible. Necesita usar algunos de los lectores de códigos QR.
En este artículo, ambos aprenderemos cómo crear o generar un código QR para que cuando escaneemos el código pueda ser dirigido a SMS, correo electrónico, sitio web o simplemente para averiguar qué datos hay detrás del código QR.
Aquí, comenzaremos desde cero creando un nuevo proyecto de laravel.
Esta guía lo llevará a través de todos los pasos necesarios, que le indicarán cómo generar varios códigos QR en la aplicación Laravel 9 utilizando el paquete de código QR simple.
Un generador de códigos QR simple le brinda la libertad de generar diferentes tipos de códigos QR en la aplicación Laravel 9. Proporciona un envoltorio QrCode simple, que es fácil de integrar en laravel.
Cómo generar código QR en Laravel 9
- Crear proyecto Laravel
- Agregar detalles de la base de datos
- Instalar paquete de código QR
- Registrar servicio de código QR
- Crear controlador
- Añadir ruta
- Genera códigos QR en Blade View
- Ejecutar la aplicación Laravel
Crear proyecto Laravel
Primero, abre la Terminal y ejecuta el siguiente comando para crear un nuevo proyecto de Laravel:
composer create-project --prefer-dist laravel/laravel:^9.0 qr-code-example
Nota: Laravel 9 requiere PHP 8.0 o PHP 8.1.
o, si ha instalado el instalador de Laravel como una dependencia global del compositor:
laravel new qr-code-example
Agregar detalles de la base de datos
Después de la instalación, vaya al directorio raíz del proyecto, abra el archivo .env
y configure los detalles de la base de datos de la siguiente manera:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=<DATABASE NAME> DB_USERNAME=<DATABASE USERNAME> DB_PASSWORD=<DATABASE PASSWORD>
Instalar paquete de código QR
Ingrese al símbolo del sistema, escriba el comando dado y comience a instalar el paquete simplesoftwareio/simple-qrcode; ayuda profundamente a crear varios tipos de códigos QR en la aplicación laravel.
composer require simplesoftwareio/simple-qrcode
Registrar servicio de código QR
Debe registrar los servicios de código QR en el archivo config/app.php, así que abra el archivo y actualice los proveedores y la matriz de alias con los servicios que se indican a continuación.
<?php return [ 'providers' => [ .... SimpleSoftwareIO\QrCode\QrCodeServiceProvider::class, ], 'aliases' => [ .... 'QrCode' => SimpleSoftwareIO\QrCode\Facades\QrCode::class, ]
Crear controlador
En laravel, toda la lógica comercial va al archivo del controlador, y necesitamos un controlador para crear uno usando el comando dado.
php artisan make:controller QrCodeController
A continuación, abra QrCodeController.php y agregue el siguiente código en el archivo:
<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;class QrCodeController extends Controller { public function index() { return view('qrcode'); } }
Añadir ruta
Ahora, abra el archivo web.php y agregue las siguientes rutas, que se encuentran dentro del directorio de rutas:
<?phpuse Illuminate\Support\Facades\Route; use App\Http\Controllers\QrCodeController;/* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- */Route::get('/qrcode', [QrCodeController::class, 'index']);
Genera códigos QR en Blade View
Le mostraremos cómo usar el archivo de visualización y generar códigos QR simples y de colores en laravel.
Ahora, está listo para configurar un archivo de vista de hoja, creando así el archivo de vista de hoja dentro de la carpeta de vistas, luego agregue el código proporcionado en el archivo resources/views/qrcode.blade.php.
<!DOCTYPE html> <html><head> <meta charset="utf-8"> <title>How to Generate QR Code in Laravel 9</title> <meta name="csrf-token" content="{{ csrf_token() }}"> <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"/> </head><body> <div class="container mt-4"> <div class="card"> <div class="card-header"> <h2>Simple QR Code</h2> </div> <div class="card-body"> {!! QrCode::size(300)->generate('https://techvblogs.com/blog/generate-qr-code-laravel-9') !!} </div> </div> <div class="card"> <div class="card-header"> <h2>Color QR Code</h2> </div> <div class="card-body"> {!! QrCode::size(300)->backgroundColor(255,90,0)->generate('https://techvblogs.com/blog/generate-qr-code-laravel-9') !!} </div> </div> </div> </body> </html>
Ayudantes para generar diferentes códigos QR
Bitcoin
Este ayudante genera un bitcoin escaneable para enviar pagos.
QrCode::BTC($address, $amount);//Sends a 0.334BTC payment to the address QrCode::BTC('bitcoin address', 0.334);//Sends a 0.334BTC payment to the address with some optional arguments QrCode::size(500)->BTC('address', 0.0034, [ 'label' => 'my label', 'message' => 'my message', 'returnAddress' => 'https://www.returnaddress.com' ]);
Este asistente genera un código QR de correo electrónico que puede completar la dirección de correo electrónico, el asunto y el cuerpo:
QrCode::email($to, $subject, $body);//Fills in the to address QrCode::email('[email protected]');//Fills in the to address, subject, and body of an e-mail. QrCode::email('[email protected]', 'This is the subject.', 'This is the message body.');//Fills in just the subject and body of an e-mail. QrCode::email(null, 'This is the subject.', 'This is the message body.');
Geo
Este ayudante genera la latitud y la longitud que un teléfono puede leer y abre la ubicación en Google Maps o una aplicación similar.
QrCode::geo($latitude, $longitude); QrCode::geo(37.822214, -122.481769);
Número de teléfono
Este ayudante genera un código QR que se puede escanear y luego marca un número.
QrCode::phoneNumber($phoneNumber); QrCode::phoneNumber('555-555-5555'); QrCode::phoneNumber('1-800-Laravel');
SMS (mensajes de texto)
Este asistente crea mensajes SMS que se pueden completar previamente con la dirección de envío y el cuerpo del mensaje:
QrCode::SMS($phoneNumber, $message); //Creates a text message with the number filled in. QrCode::SMS('555-555-5555'); //Creates a text message with the number and message filled in. QrCode::SMS('555-555-5555', 'Body of the message');
WiFi
Este ayudante crea códigos QR escaneables que pueden conectar un teléfono a una red WiFi:
QrCode::wiFi([ 'encryption' => 'WPA/WEP', 'ssid' => 'SSID of the network', 'password' => 'Password of the network', 'hidden' => 'Whether the network is a hidden SSID or not.' ]);//Connects to an open WiFi network. QrCode::wiFi([ 'ssid' => 'Network Name', ]);//Connects to an open, hidden WiFi network. QrCode::wiFi([ 'ssid' => 'Network Name', 'hidden' => 'true' ]);//Connects to a secured WiFi network. QrCode::wiFi([ 'ssid' => 'Network Name', 'encryption' => 'WPA', 'password' => 'myPassword' ]);
Ejecutar la aplicación Laravel
Eventualmente, use el comando PHP craft para iniciar el servidor laravel y también use la URL dada para ver la aplicación.
php artisan serve
Gracias por leer este blog.
Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre Laravel: