Artículos

Inicio / Artículos
Qué son los métodos mágicos de PHP

Qué son los métodos mágicos de PHP

Herramientas
Una de las características que más me gusta de PHP son los métodos "mágicos". En realidad, como en la vida real, no se trata de magia como tal, si no de buenos trucos. De lo que se trata en este caso es de métodos que son invocados automáticamente (ante ciertos sucesos o eventos). La principal característica que tienen estos métodos es que sus nombres comienzan con __ (doble underscore). Si venís programando con objetos en PHP (al menos desde la versión 5), reconocerás estos (Especialmente el primero): __construct __destruct Puede que no lo supieras, pero el constructor y destructor de la clase pertenecen a un grupo más grande de métodos (conocidos como "mágicos"). Veamos algunos de ellos: __toString Este es otro de los más conocidos. Su función es retornar una…
Leer más
Cómo mostrar un array de PHP en una tabla HTML

Cómo mostrar un array de PHP en una tabla HTML

Cómo hacer para...
Los arreglos (o arrays) en PHP son, por lejos, la estructura de datos más utilizada. A diferencia de otros lenguajes, los de PHP son altamente flexibles (no tienen una longitud predeterminada, pueden albergar datos de diferente tipo, etc...). Una necesidad bastante común cuando se trabaja en desarrollo de aplicaciones web es la visualización del contenido de un arreglo en forma de tabla HTML. El ejemplo más claro es cuando el arreglo contiene los resultados de una consulta a una base de datos. Existen varios modos de lograr esta visualización. A continuación verás algunos de ellos, asumamos que todos los ejemplos comienzan con la definición del arreglo: <?php $a = [ [ 'Nombre' => 'Mauro', 'Apellido' => 'Chojrin', 'Correo' => 'mauro.chojrin@leewayweb.com', ], [ 'Nombre' => 'Alberto', 'Apellido' => 'Loffatti', 'Correo' =>…
Leer más
Cuál es el mejor lenguaje para aprender a programar

Cuál es el mejor lenguaje para aprender a programar

Reflexiones
Una pregunta que veo repetirse mucho entre gente que quiere aprender a programar es qué lenguaje es más conveniente para empezar. Lo que suelo contestar es que no es de suma importancia el lenguaje que se elija. Lo más importante a la hora de comenzar es aprender los rudimentos básicos de la programación (Qué son las variables, los ciclos, las expresiones, etc...). Todos los lenguajes, de alguna u otra manera, implementan los mismo conceptos básicos. En cierto modo es como preguntar qué instrumento es mejor para aprender música. Ciertamente hay algunos lenguajes que son más amigables con los novatos (Al igual que es más fácil aprender a tocar la guitarra que el arpa... o eso me han dicho :p). En qué se diferencian los lenguajes de programación La diferencia principal que tiene…
Leer más
Cómo generar facturas electrónicas usando PHP

Cómo generar facturas electrónicas usando PHP

Cómo hacer para...
En los países de Latinoamérica se está produciendo una migración hacia la facturación electrónica (dejando de lado las viejas facturas de papel). Más allá de aspectos políticos, es una muy buena noticia por, al menos, los siguientes motivos: Las operaciones comerciales se realizarán mucho más eficientemente Se limitará muchísimo la economía informal y todos los problemas que de ella se derivan Dará mucho trabajo a muchos programadores :) Sobre este último punto, veo que a muchos colegas se les complica un poco el tema de integrar sus sistemas con aquellos de la autoridad central de su país, así que decidí hacer este pequeño compendio de las librerías que hay disponibles como para acortar un poco el camino. Cómo generar facturas electrónicas para Argentina En el caso de Argentina, la autoridad…
Leer más
Cómo recorrer un archivo XML usando PHP

Cómo recorrer un archivo XML usando PHP

Cómo hacer para...
Como de costumbre, comencemos por ponernos de acuerdo en las definiciones. Qué es XML Las siglas XML remiten a eXtensible Markup Language (Lenguaje de etiquetas extendible). Se trata de texto estructurado mediante etiquetas (Palabras encerradas entre < y >): <utensilios>   <tenedor/>   <cuchillo/> </utensilios> Para qué sirve XML XML se inventó como un medio de intercambio de información entre sistemas a través de Internet. Al ser un formato basado en texto, era fácil aprovechar la infraestructura existente para comunicarse a través de HTTP. Hoy en día, XML es utilizado en muchas implementaciones de WebServices (Por ejemplo, las facturas electrónicas) y también para almacenar configuraciones (En el caso del lenguaje Java es muy común encontrar este tipo de archivos, en PHP no tanto). Cómo se procesa XML usando PHP Al tratarse…
Leer más
Cuál es la diferencia entre SQL y MySQL

Cuál es la diferencia entre SQL y MySQL

Misceláneos
Vi esta pregunta en un grupo de Facebook: Y me llamó mucho la atención... claramente este amigo está bastante confundido y, como imagino que debe haber otros preguntándose lo mismo (o algo similar), me parece que vale la pena aclarar un poco los tantos :) Qué es SQL SQL es un lenguaje de programación diseñado especialmente para trabajar con bases de datos relacionales. Las siglas SQL significan Structured Query Language (Lenguaje estructurado de consultas). Una aclaración importante: la palabra "consulta" en español es sinónimo de pregunta o cuestionamiento... en el caso de las bases de datos (las relacionales al menos), cualquier operación (alta, baja, modificación o lectura) se denomina consulta. El lenguaje SQL fue inventado alrededor de la década de 1970 (algo que, en informática, es prácticamente la pre-historia) para trabajar…
Leer más
¿Es PHP un lenguaje sólo para principiantes?

¿Es PHP un lenguaje sólo para principiantes?

Reflexiones
Algo que vengo oyendo y leyendo mucho es esta creencia de que PHP es un lenguaje sólo para principiantes o para desarrollos "poco serios" y una cantidad de otras formas de significar que PHP es un lenguaje de segunda. Me recuerda a esta simpática imagen: Obviamente, mi opinión es la contraria y no puedo perder la oportunidad de expresar mi punto de vista (y esperablemente esclarecer un poco :)). ¿De dónde viene esta creencia? PHP es un lenguaje que no ha sido pensado con un plan de largo plazo. Ha crecido orgánicamente mucho más allá de su objetivo original (una simple herramienta para ayudar a generar scripts CGI) y ese crecimiento ha sido ciertamente desordenado (hasta hace un tiempo al menos). La consecuencia directa de este objetivo es que PHP fue…
Leer más
¿Es posible hostear una aplicación PHP en Windows?

¿Es posible hostear una aplicación PHP en Windows?

Misceláneos
Un amigo me contactó por un problema que estaba enfrentando su equipo técnico: están desarrollando una aplicación PHP que necesitan hostear sí o sí en un servidor Windows. Actualmente tienen un IIS montado en su servidor y la duda era, primero si era posible servir PHP desde IIS o si era necesario usar un servidor Apache y, en tal caso, si era necesario compilarlo desde 0 (Algo que estaba fuera del alcance de dicho equipo). Mi primera impresión ante esta situación fue de sorpresa. Ciertamente, Windows no sería mi elección en cuanto a servidor (En general prefiero mantenerme alejado de Windows, pero especialmente para el caso de servidores soy bastante estricto). Yo optaría por alguna distribución de linux (Probablemente basada en Debian como para hacer las cosas sencillas, pero en DistroWatch siempre…
Leer más