Loguear errores y mensajes en PHP en archivo de texto con un logger

Crear un simple logger en PHP para depurar y escribir errores en archivo de texto Depurar nuestro código de PHP es uno de los pasos más importantes de la programación. Una gran ayuda que tenemos a nuestra disposición son los logs o archivos de log. Hoy veremos cómo escribir mensajes de error y depuración (o debug) en archivos de texto usando PHP sin usar librerías externas, únicamente funciones nativas y un poco de código al inicio de nuestro script. Gracias a esto podremos escribir mensajes de información y también llevar un registro de errores sin mostrarlos al usuario, con fecha y hora de llamada así como el script de llamada. Un ejemplo del log que vamos a crear (esto dependerá de tu app pero para que te des una idea) es este: [07-Feb-2019 09:37:29 America/Mexico_City] Soy un mensaje [07-Feb-2019 09:37:29 America/Mexico_City] PHP Warning: Division by zero in D:\desarrollo_php\htdocs\loguear\index.php on line 9 [07-Feb-2019 09:37:29 America/Mexico_City] Mensaje desde la línea 12 del archivo D:\desarrollo_php\htdocs\loguear\index.php [07-Feb-2019 09:37:29 America/Mexico_City] Hola, yo soy parzibyte y mi sitio es parzibyte.me [07-Feb-2019 09:37:29 America/Mexico_City] Los personajes son: a:4:{i:0;s:5:"Crash";i:1;s:10:"Fake Crash";i:2;s:4:"Pura";i:3;s:5:"Polar";} [07-Feb-2019 09:37:29 America/Mexico_City] La mascota: array ( 'nombre' => 'Maggie', 'edad' => 3, 'amigos' => array ( 0 => array ( 'nombre' => 'Guayaba', 'edad' => 2, ), 1 => array ( 'nombre' => 'Meca', 'edad' => 5, ), 2 => array ( 'nombre' => 'Snowball', 'edad' => 2, ), ), ) [07-Feb-2019 09:37:29 America/Mexico_City] PHP Fatal error: Uncaught Exception: Yo soy una excepción muy malvada in D:\desarrollo_php\htdocs\loguear\index.php:48 Stack trace: #0 {main} thrown in D:\desarrollo_php\htdocs\loguear\index.php on line 48 Veamos entonces cómo loguear con PHP, además de evitar mostrar los errores al usuario, asegurando nuestras aplicaciones web. ...

febrero 11, 2019 · 6 min · 1241 palabras · Parzibyte

Generar y guardar imágenes de códigos de barras con PHP

Códigos de barras con PHP Los códigos de barras sirven para muchísimas cosas, por ejemplo, identificar a productos. Podríamos tener un sistema de ventas y generar códigos de barras dependiendo del valor de cada uno de ellos. Es por ello que en este artículo voy a explicar cómo generar códigos de barras con PHP y guardarlos en una imagen PNG o JPG, así como guardarlos en un archivo SVG o simplemente generar el código HTML necesario. ...

febrero 7, 2019 · 8 min · 1689 palabras · Parzibyte

Forzar la descarga de cualquier archivo con PHP y readfile

Obligar descarga de un fichero sin importar su extensión Cuando un navegador web visita un archivo que entiende, lo muestra. Por ejemplo, si encuentra un archivo con extensión .txt entonces lo sirve en lugar de mostrar el diálogo de descarga. Pues hoy veremos cómo servir un archivo con PHP pero forzar su descarga sin importar la extensión. No importa si es un exe, html o txt, todo será forzado a descargarse. Para esto usaremos la función readfile. Este tutorial me recuerda al que muestra cómo proteger el acceso a imágenes con Apache y PHP. ...

febrero 6, 2019 · 3 min · 625 palabras · Parzibyte

Unir o combinar archivos PDF con PHP y libmergepdf

Los documentos PDF son parte importante en el mundo digital. Gracias a ellos podemos tener acceso a la información en un formato unificado y entendible por la mayoría de sistemas operativos. Hoy veremos cómo unir muchos documentos PDF con PHP. Es decir, podemos unir 2 o más PDF’s con PHP. Esta operación también se conoce como merge o como combinar múltiples PDF. Aparte de ver cómo combinar o unir PDFs con PHP veremos 3 maneras de mostrar el documento final combinado: mostrar en el navegador, forzar su descarga o escribirlo en un nuevo archivo PDF. ...

febrero 4, 2019 · 6 min · 1163 palabras · Parzibyte

Adaptar proyecto de PHP a Composer

Composer se ha convertido en el gestor de dependencias más usado en PHP. Puede que nuestro proyecto de PHP existente no necesitara un gestor al inicio, pero ahora lo necesita. O tal vez necesitamos instalar una librería que usa composer. Por ello es que hoy veremos cómo adaptar un proyecto normal de PHP a un proyecto gestionado por composer. ...

febrero 3, 2019 · 2 min · 250 palabras · Parzibyte

Primeros pasos con Composer y explicación de su funcionamiento

Todo el mundo habla de composer y ahora las dependencias de los proyectos de PHP son gestionados por este, valga la redundancia, gestor. En este post explicaré por qué usar composer, cómo usarlo, instalarlo y cómo funciona a grandes rasgos. ...

febrero 2, 2019 · 4 min · 715 palabras · Parzibyte

He renovado mi página principal y ahora es open source

Justo hoy he publicado mi página principal totalmente renovada y hecha por mí, además de que es totalmente open source (he puesto el repositorio en línea). Ya era hora, pues no estaba mostrando mi portafolio y la última actualización fue en diciembre del 2017. Voy a explicar en este post cómo fue la creación y las cosas que usé para crearla; además de exponer cómo hice para que cargara rápido y otras cosas. ...

enero 25, 2019 · 6 min · 1207 palabras · Parzibyte

Ejemplo simple de login con PHP

En este post explicaré las bases para trabajar con un login y sesiones en PHP. Será un ejemplo muy básico para principiantes, lo que haremos será: Crear un formulario de login Verificar si el usuario y la contraseña coinciden Si coinciden, se inicia sesión y se redirige a otra página Si no coinciden, se indica con un mensaje Poner un enlace para cerrar sesión En resumen, será un tutorial para iniciar y cerrar sesión en PHP, además de proteger páginas; todo esto perfectamente comentado y explicado para los principiantes. ...

enero 22, 2019 · 7 min · 1386 palabras · Parzibyte

Presentando un sistema web para hacer cotizaciones y presupuestos, gratuito y open source

Hoy vengo a presentar un software para realizar cotizaciones o presupuestos, el cual es totalmente gratuito de usar en la nube; así como open source. Es decir, aparte de que puedes usarlo en mi sitio, puedes descargarlo y modificarlo. Características del software No es la gran cosa, pero entre sus principales características encontramos las siguientes: Realizar cotizaciones o presupuestos Estimar el costo requerido, el cual se configura por cada servicio Calcular tiempo requerido por cada servicio Describir características y/o condiciones del trabajo Agregar clientes para ligarlos a las cotizaciones Imprimir la cotización o guardarla como PDF (esto depende del navegador la mayoría de veces) Multiusuario: cualquier usuario puede registrarse y usarlo, así de simple. Eso sí, las cotizaciones, servicios y características son separadas por usuario Totalmente open source Escrito con PHP, utiliza PDO para interactuar con la base de datos Base de datos MySQL Lado del cliente con Vue.JS y Bootstrap Mensaje de agradecimiento, presentación y pie totalmente configurables Se me ocurre que puede servir tanto como para estudiantes que tienen que entregar un proyecto con PHP simple, así como para personas que necesitan un software como estos. Voy a explicar cómo fue creado, en dónde se puede probar y también dónde se puede leer el código fuente. ...

enero 10, 2019 · 4 min · 703 palabras · Parzibyte

Codificar y decodificar JSON en PHP: todo lo que necesitas saber

PHP es un lenguaje del lado del servidor en donde se puede crear una API que se comunique a través de JSON, tanto para leer peticiones como para responder. Hoy veremos cómo codificar y decodificar JSON en PHP con funciones nativas. Por defecto, PHP tiene algunos errores al codificar en JSON, ya que a veces algunos números no son codificados como números, sino como cadenas; por eso veremos cómo evitar eso y personalizar la salida gracias a las constantes JSON de PHP. También veremos cómo manejar los errores; limitar la profundidad de los objetos y otras cosas muy importantes al trabajar con JSON en el lenguaje PHP. Con PHP y JSON podemos codificar cualquier tipo de variable; no importa si es un booleano, entero, cadena o flotante; todo se codifica correctamente. Lo mismo es para los arreglos u objetos; u objetos con arreglos en su interior. ...

diciembre 26, 2018 · 9 min · 1833 palabras · Parzibyte