En este blog aprenderemos a generar código QR usando PHP paso a paso. Con la ayuda de un script PHP simple, puede generar un código QR para texto, teléfono, URL, correo electrónico y SMS.
En este proyecto necesitas crear dos archivos:
- qrcode.php
- index.php
PASO 1: Defina la clase QrCode en qrcode.php:
1. Cree una clase QrCode. En esta clase, definiremos la URL para la API de GOOGLE CHART y las funciones para generar el código QR para texto, teléfono, URL, correo electrónico y SMS.
clase QRCode { }
PASO 2: Defina la URL de la API de gráficos de Google en la clase QrCode:
1. Creamos variables para almacenar la URL de la API de gráfico de Google y los datos que se utilizan para crear el código QR.
class QrCode { //URL DE GOOGLE CHART API private $apiUrl = 'https://chart.apis.google.com/chart'; // DATOS PARA CREAR CÓDIGO QR private $datos; }
PASO 3: Definir Funciones para generar código QR de diferentes tipos en QrCode Class:
Disponemos de los siguientes tipos y funciones para los mismos en los que podemos generar el Código QR:
1.URL
// Función que se utiliza para generar el tipo de URL del Código QR. URL de la función pública ($url = null) { $this->data = preg_match("#^https?\:\/\/#", $url) ? $url: "https://{$url}"; }
2.Text
// Función que se utiliza para generar el tipo de TEXTO de Código QR. public function TEXTO($texto) { $this->data = $texto; }
3. CORREO ELECTRÓNICO
// Función que se utiliza para generar el tipo EMAIL de código QR. public function EMAIL($email = null, $asunto = null, $mensaje = null) { $this->data = "MATMSG:TO:{$email};SUB:{$asunto};BODY:{$mensaje}; ;"; }
4.TELÉFONO
// Función que se utiliza para generar el tipo TELÉFONO de código QR. public function TELÉFONO($teléfono) { $esto->datos = "TEL:{$teléfono}"; }
5.SMS
// Función que se utiliza para generar el tipo SMS de Código QR. public function SMS($teléfono = nulo, $mensaje = nulo) { $esto->datos = "SMSTO:{$teléfono}:{$mensaje}"; }
6. CONTACTO
// Función que se utiliza para generar el tipo CONTACTO de Código QR. función pública CONTACTO ($nombre = nulo, $dirección = nulo, $teléfono = nulo, $correo electrónico = nulo) { $esto->datos = "MECARD:N:{$nombre};ADR:{$dirección};TEL: {$teléfono};CORREO ELECTRÓNICO:{$correo electrónico};;"; }
PASO 4: Definir funciones para guardar la imagen del código QR en la clase QrCode:
//Función que se utiliza para guardar el archivo de imagen qrcode. public function QRCODE($size = 400, $filename = null) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $this->apiUrl); curl_setopt($ch, CURLOPT_POST, verdadero); curl_setopt($ch, CURLOPT_POSTFIELDS, "chs={$tamaño}x{$tamaño}&cht=qr&chl=" .
PASO 5: Cree un nuevo archivo index.php.
1. En este archivo llamamos a la función para generar el Código QR de diferentes tipos que definimos en qrcode.php.
2. Para generar el Código QR de texto necesita llamar a la función TEXTO en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código de texto $qc->TEXT("Knowband"); // Guardar código QR $qc->QRCODE(400,"Knowband_text.png"); ?>
3. Para generar el código QR de URL, debe llamar a la función de URL en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código URL $qc->URL("Knowband.com"); // Guardar código QR $qc->QRCODE(400,"Knowband_url.png"); ?>
4. Para generar el código QR de EMAIL, debe llamar a la función EMAIL en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código de CORREO ELECTRÓNICO $qc->EMAIL("Knowband@test.com","Asunto","Mensaje"); // Guardar código QR $qc->QRCODE(400,"Knowband_email.png"); ?>
5. Para generar el código QR del TELÉFONO, debe llamar a la función TELÉFONO en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código de TELÉFONO $qc->TELÉFONO("1234567890"); // Guardar código QR $qc->QRCODE(400,"Knowband_phone.png"); ?>
6. Para generar el código QR de SMS, debe llamar a la función de SMS en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código SMS $qc->SMS("1234567890"); // Guardar código QR $qc->QRCODE(400,"Knowband_sms.png"); ?>
7. Para generar el código QR de CONTACTO, debe llamar a la función CONTACTO en su archivo index.php.
<?php // Incluir archivo qrcode.php. incluir "qrcode.php"; // Crear objetos $qc = new QRCODE(); // Crear código de CONTACTO $qc->CONTACT("knowband","Address","1234567890","knowband@test.com"); // Guardar código QR $qc->QRCODE(400,"Knowband_contact.png"); ?>
PASO 6: Ejecute el archivo de script (index.php) en su entorno:
Si todo va bien, el nombre del archivo se llamará “knowband_text.png” y otro que desee descargar y guardar en su computadora.
NOTA: Solo puede generar 1 tipo de código QR a la vez.
Haga click aquí para descargar el código completo.