Crear código QR con PHP

Los códigos QR por sus siglas “quick response” o respuesta rápida, son códigos que pueden almacenar mucha información en una imagen de puntos bidimensional, se pueden considerar la evolución de los códigos de barras.

Los codigos QR pueden almacenar texto, numeros, ubicaciones, links, etc… y pueden ser leídos con aplicaciones en dispositivos mobiles o lectores de QR especiales.

Ahora vamos a crear codigos QR usando la libreria PHPQRCODE que podemos descargar desde http://phpqrcode.sourceforge.net/ bastara descomprimir la carpeta y copiarla al lugar donde la usaremos.

Código

A continuación el código de ejemplo:

1
2
3
4
include('phpqrcode/qrlib.php');
$content = "http://areimilla.cl";
QRcode::png($content,"hola.png",QR_ECLEVEL_L,10,2);
echo "<img src='hola.png'/>";

El código esta resumido en 4 lineas:

  • Linea 1: Incluir la libreria
  • Linea 2: Definir el contenido del codigo QR
  • Linea 3: Definir el código QR con sus parámetros
    • Primer parámetro es el contenido
    • Segundo parámetro el nombre de la imagen donde se guardara, debe ser PHP
    • Tercer parámetro tipo de código puede ser QR_ECLEVEL_L, QR_ECLEVEL_H, QR_ECLEVEL_M, QR_ECLEVEL_Q
    • Cuarto parámetro es el tamaño de los pixeles del código qr, este define el tamaño de la imagen
    • Quinto parámetro es el tamaño de el marco del código qr
  • Linea 4: Mostrar la imagen generada.

2 Comments

  • rodolfo

    Abril 1, 2022

    no se le puede agregar un logo encima del código qr ?

    Reply
    • Alex Reimilla

      Abril 4, 2022

      < ?php require_once("phpqrcode/qrlib.php"); // Ruta de tu imagen $filepath = 'ruta/tu-imagen.jpg'; // Imagen (logotipo) a dibujar $logopath = 'http://ourcodeworld.com/resources/img/ocw-empty.png'; // contenido del código qr $codeContents = 'http://tu-web.com'; // Crea el archivo en la ruta proporcionada // Personaliza como quieras QRcode::png($codeContents,$filepath , QR_ECLEVEL_H, 20); // Empezar a DIBUJAR LOGO EN QRCODE $QR = imagecreatefrompng($filepath); // EMPEZAR A DIBUJAR LA IMAGEN EN EL CÓDIGO QR $logo = imagecreatefromstring(file_get_contents($logopath)); $QR_width = imagesx($QR); $QR_height = imagesy($QR); $logo_width = imagesx($logo); $logo_height = imagesy($logo); // Escale el logotipo para que quepa en el código QR $logo_qr_width = $QR_width/3; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; imagecopyresampled($QR, $logo, $QR_width/3, $QR_height/3, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height); // Guarde el código QR de nuevo, pero con el logotipo imagepng($QR,$filepath); // Fin DIBUJAR LOGO EN CÓDIGO QR // Imagen de salida en el navegador echo '‘;
      ?>

      Reply

Responder a rodolfo Cancelar respuesta

Captcha *

− 3 = 7