Inicio > Php

PHP


En esta sección hay varios posts sobre programación web en php. Llevo varios años programando con php y he adquirido conocimentos y bastante experiencia.

RASTREAR EL CÓDIGO

10/06/2017PHP

 

Una manera de trastrear el código en php es escirbiendo logs en todas las funciones de la aplicación para depurar el código y poder encontrar un error.

SINTAXIS ALTERNATIVA DE LAS ESTRUCTURAS DE CONTOL

05/06/2017PHP

 

Como en la mayoría de lenguajes de programación, php usa las llaves ({}) para abrir y cerrar funciones, bucles y estructuras de control.

COUNT RECURSIVO

05/05/2017PHP

 

La función count de php de vuelve el número de elementos de un array. Y para saber cuantos elementos tiene un array multidimensional hay que usar el parámetro COUNT_RECURSIVE.

ALGORITMO DE LUHN

09/05/2017PHP

 

He usado este algoritmo para la validación de tarjetas de crédito para los proyectos ecommerce que desarrollo. Pero hace unos años lo tuve que utilizar para validar el IMEI

OPERADOR ELVIS

10/04/2017PHP

 

Hoy me he enterado, por casualidad, de la existencia del operador Elvis en diversos lenguajes de programación, entre ellos php. La verdad es que es bastante sencillo, y sobre todo sirve

LISTADO DE FICHEROS ORDENADOS

27/03/2017PHP

 

En el proyecto que en el que estoy trabajando actualmente hay una sección que recorre un directorio y lista su contenido ordenado alfabéticamente y lo que hacía era recorrer el directorio con la funci

STDCLASS

26/03/2017PHP

 

Hace años tuve que usar el objeto StdClass porque tenía que sacar un json de una determinada manera y me aconsejaron usarlo. ¿Pero qué es StdClass? Es una clase predefinida que no tiene ni pro

PHPCPD

24/03/2017PHP

 

Hoy me he enterado de la existencia de una herramienta de php que sirve para detectar código duplicado lo que resulta muy útil. PHPCPD significa PHP Copy/Paste Detector, es

FIREPHP

10/03/2017PHP

 

Cuando quiero hacer debug de mis desarrolls desarrollos en php, lo más rápido y sencillo es mostrar en la página, que estamos desarrollando, el contenido de las variables, para ver el va

MEMORIA USADA POR PHP

16/02/2017PHP

 

Una manera bastante sencilla de saber cuanta memoria usa un proceso escrito en php es usando la función memory_get_usage que devuelve la cantidad de memoria, en bytes, que actualmente se

PROBLEMA CON ISSET

16/02/2017PHP

 

En php hay una función que se llama isset que te dice si la variable que se le pasa por parámetro está definida. Si la variable está definida devuelve TRUE y si no está definida devuelve

NOWDOC

15/02/2017PHP

 

Hace unos meses escribí sobre el tratamiento de cadenas con

CONDICIONES YODA

14/02/2017PHP

 

Las condiciones Yoda es cuando el orden lógico de los operandos se cambia. Os pongo un ejemplo para que se entienda mejor: Normalmente cuando se hace un if se pone la condición de la siguiente

CACHE SENCILLO CON PHP

06/02/2017PHP

 

Hace unos meses escribí un post sobre usar caché, para cachear contenidos, en php, más concretamente lo escribí sobre memcached

PUBLIC PRIVATE Y PROTECTED

30/01/2017PHP

 

Cuando declaramos una clase en php los atríbutos y métodos se pueden definir como públicos, protegidos o privados (public, protected o private) según la visibilidad

VULNERABILIDAD LFI

12/01/2017PHP

 

Hace poco descubría la vulnerabilidad LFI (Local File Inclusion) o la inclusión local de ficheros que consiste en incluir ficheros locales, es decir, archivos que se encuentran en el mis

VALIDAR DOMINIO EMAIL

26/12/2016PHP

 

Hace un tiempo escribí una entrada de como validar emails en php de una forma sencilla y evitar el uso de expresiones regulare.

SECURIZAR PHP

20/12/2016PHP

 

Hay varias opciones, que son bastante sencillas que sirven para securizar php. Todas las opciones que pongo en este post hay que hacerlas en el fichero de configuración de php.

VULNERABILIDAD FUNCIÓN MAIL

28/11/2016PHP

 

La función mail de php es bastante vulnerable para ser hackeada, y se recomienda no usar dicha función. Cuando tenemos un formulario de contacto para que el usuario de nuestra web .

CADENAS DE CARACTERES MULTIBYTE

14/10/2016PHP

 

Normalmente cualquier idioma puede ser representado por una referencia uno a uno a un valor de 8 bits, pero también hay bastantes idiomas que requieren tantos caracteres que no pueden ser representad

CREAR FICHERO TEMPORAL

11/10/2016PHP

 

Según las necesidades del proyecto hay en ocasiones que es necesario crear un archivo temporal y seguro que muchos de nosotros lo primero que hacemos es crear el fichero y luego borrarlo con e

FORK DE PROCESOS

03/10/2016PHP

 

Como en muchos lenguajes, php hay herramientas disponibles para crear y manejar procesos que es la extensión Process Control (PCNTL) solo disponible en sistemas Unix o Linux.

PHAR

31/08/2016PHP

 

Los ficheros phar en php son ficheros que almacenan una aplicación php para facilitar la distribución e instalación de dicha aplicación.

TRAITS

21/07/2016PHP

 

Hoy he aprendido un concepto nuevo en php que es el concepto de traits.Los traits son un mecanismo para reutilizar código en un lenguaje que no soporta la herencia múltiple.

BREAK

23/06/2016PHP

 

Sé que el uso de la instrucción break es conocida por todos y que sirve para finalizar la ejecución de las estructuras for, foreach, while, do-while o switch en ejecució pero lo que no sabía es

PHP JAVA BRIDGE

14/05/2016PHP

 

Hasta hace poco no sabía que se podían crear objetos en php a partir de clases de java, que comunmente se llama php java bridge.

SOBRECARGA DE FUNCIONES

11/06/2017PHP

 

En la teoría de objetos existe el concepto de sobrecarga de funciones que consiste en poder definir varias funciones con el mismo nombre pero con diferente número y/o tipo de parámetros.

LISTAS DE CONTROL DE ACCESO O ACL

10/03/2016PHP

 

Las listas de control de acceso o tambiémn conocido como ACL consiste en un sistema de usuarios y roles. Yo lo usé en una empresa en la que estuve y que se dedicaba al e-commerce.

EXTRACT

08/03/2016PHP

 

Hace poco me enteré de la función extract de php y lo que hace es convertir cada elemento de un array en variables y se cogen los índices de dicho array para nombrar las va

INYECCIÓN DE DEPENDENCIAS

07/03/2016PHP

 

La inyección de dependencias es un patrón de diseño, que trata de solucionar las necesidades de creación de los objetos de una manera práctica, útil y escalable.

COMPOSER

20/12/2016PHP

 

Composer es un gestor de dependencias de proyectos de php que permite gestionar (declarar, descargar y mantener actualizadas) las librerías en PHP

ELASTICSEARCH

20/12/2016PHP

 

Hace poco me enteré de la existencia de elasticsearch y he estado indagando un poco para saber lo que era. Elasticsearch se puede definir como un producto para indexar y analizar

CONEXIÓN SSL A MYSQL

21/02/2016PHP

 

Con la función mysqli_ssl_set se puede hacer una conexión segura SSL desde php a MySQL. La manera de establecer una conexión segura es bastante fácil.

CONEXIONES MYSQLI

20/12/2016PHP

 

Hace poco migré mi página web a php7 y uno de los cambios fundamentales es que tuve que empezar a usar mysqlcli para conectarme a MySQL.

OPERADOR COALESCENCIA NULO

10/02/2016PHP

 

Una de las novedades que trae php 7 es el operador coalescencia nulo.Este operador no es nuevo para algunos programadores ya que se usa en varios lenguajes de programación como C#, perl

TRANSACCIONES PDO

17/02/2017PHP

 

Un problema que puede surgir al utilizar pdo es que no todas las bases de datos soportan transacciones, php se ejecuta en modo de auto-commit

PDO

17/02/2017PHP

 

La extensión pdo es una capa de abastracción que permite conectar con diferentes bases de datos usando las mismas funciones facilitndo su portabilidad.

PHP 7

09/02/2016PHP

 

Acabo de migrar mi página web a php 7 y la verdad pensé que iba a ser más crítico. Lo único que he tenido que cambiar es que para conectarse a MySQL hay que usar o mysqli

OPERADOR COMBINADO DE COMPARACIÓN

09/02/2016PHP

 

Revisando las novedades de php 7 me he encontrado con este nuevo operador de comparación que también se denomina spaceship.

OBJECT INJECTION

07/02/2016PHP

 

En php una vulnerabilidad en la seguridad en las aplicaciones que usan programación orientada a objetos es el uso de object injection que consiste en mandar objetos serializados con códi

CROSS SITE REQUEST FORGERY

04/02/2016PHP

 

El Cross Site Request Forgery también llamado CSRF se basan en explotar la confianza que los sitios web tienen con sus usuarios. No como en los ataques

CROSS SITE SCRIPTING

03/02/2016PHP

 

El Cross Site Scripting, también conocido también como XSS, es un tipo de inseguridad informática web que permite la inserción de código malicioso en nuestra web en javascript, en VBScri

PATRONES DE DISEÑO

07/03/2016PHP

 

Los patrones de diseño, nos brindan una solución a problemas comunes a la hora de diseñar software que ya están probados y documentados. A la hora de aplicar un patrón, debemos analizar la situación e

FACTORY

11/06/2017PHP

 

El patrón de diseño factory permite centralizar la creación de objetos que van a tener una funcionalidad similar en la aplicación para desacoplar la relación entre clases.

DECORATOR

20/12/2015PHP

 

El patrón de decorator nos permite añadir, quitar o modificar responsabilidades a un objeto dinámicamente, las funcionalidades se modifican/añadirán/retirarán durante la ejecución de la aplicac

OBSERVER

11/06/2017PHP

 

El patrón observer, también conocido como el patrón publicación-inscripción, el cual, permite definir una dependencia uno-a-muchos entre varios objetos, provocando que cuando uno cambie de esta

REGISTRY

11/06/2017PHP

 

Hace un tiempo escribí sobre el patrón de diseño singleton.

WEB SCRAPING

11/06/2017PHP

 

Hace un tiempo un compañero de trabajo me comentó que un amigo suyo tenía una web que recogía información de varias webs sobre resultados de fútbol.

SPHINX

11/06/2017PHP

 

Hace ya tiempo que quería escribir un post sobre el indexador sphinx. Lo usamos nn la empresa donde estoy trabajando actualmentey la verdad es que no es muy difícil.

AUTOLOAD

21/11/2015PHP

 

Hace poco estaba haciendo memoria de mis primeros proyectos en php y me acuerdo que había un fichero global donde se hacían todos los requires de los ficheros necesaroios en el proyecto

HEREDOC

15/02/2017PHP

 

Siempre que quiero mostrar una cadena en php uso la función echo pero hace ya un tiempo que empiezo a ver una forma diferente de procesar cadenas y es usando heredoc que facilita

BÚFER DE SALIDA

20/12/2016PHP

 

En php se puede almacenar la salida de datos en el búfer, como en la mayoría de lenguajes de programación.Para activar dicho búfer hay que usar la función ob_ststart

VARIABLES VARIABLES

22/09/2015PHP

 

En php se usa el símbolo de dolar ($) para las variables, como bien es sabido. Pero con php se puede hacer referencia al contenido de una variable para usar otra...

CLONAR OBJETOS

20/12/2016PHP

 

En php cuando copio una variable $a a una variable $b y cambio el contenido de la variable $a el contenido de la variable $b seguirá siendo el mismo que en un principio.

ACELERADOR DE PHP APC

29/07/2015PHP

 

Llevo una temporada oyendo hablar de los aceleradores de php y siempre había tenido la curiosidad de aprender cómo funcionan. Me he decantado por apc y la verdad es que es de muy fácil u

CACHEAR CONTENIDO CON MEMCACHED

11/06/2017PHP

 

Memcached se usa para guardar en caché de datos u objetos reduciendo elacceso a base de datos y así optimizar la herramienta web y no perder eficiencia.

SINGLETON

20/12/2015PHP

 

Singleton es un patrón de diseño, que tiene como propósito asegurar que solo se pueda crear una instancia de la clase.

SMARTY

03/05/2015PHP

 

Smarty es un motor de plantillas para php. Esta herramienta facilita la manera de separar la aplicación lógica y el contenido en la presentación.

PATHINFO

20/12/2016PHP

 

Muchas veces para comprobar la extensión de un formulario se hace un explode de dicho fichero y se comprueba la segunda posición del array que se ha formado al hacer explode.

MONGODB

27/02/2015PHP

 

Hace ya algunos años que están funcionando las bases de datos NoSQL. La verdad es que al principio me costó entender el concepto ya que siempre he trabajado con bases de datos relacionales como

PRUEBAS TDD

20/12/2016PHP

 

TDD son las siglas de Test Driver Development.TDD se basa en la idea de realizar pruebas unitarias para el codigo a implementar. Normalmente, primero se programa y luego se realizan las pruebas unitar

OPTIMIZACIÓN DE UN PROYECTO

27/02/2015PHP

 

Ya he publicado varios post en este blog para la optimización de un proyecto web (php,javascript,MySQL y Apache) para que el proyecto tarde menos en cargarse.

FUNCIONES ANÓNIMAS

20/12/2016PHP

 

En php se permite el uso de funciones anónimas desde la versión 5.3.0. Una función anónima es una función que no tiene nombre y se suele usar en funciones de retorno o callbacks.

NAMESPACES

27/02/2015PHP

 

Cuando empecé a mirar symfony por mi cuenta, vi que se saban namespaces. Algo que me pareció rarísimo ya que no me sonaba que en php se usasen namespaces.

REDUCIR TIEMPO DE CARGA

24/05/2015PHP

 

Una manera de reducir el tiempo de carga de una página web en php es comprimir la página con zlib, el navegador ya se encarga de descomprimirla, al menos la mayoría de ellos.

TRUCOS PARA OPTIMIZAR EL CÓDIGO

20/12/2016PHP

 

Llevo meses procastinando este post y creo que puede resultar bastante útil para los que desarrollamos en php: -Como ya escribí hace un tiempo cuando se crea una cadena en php es mejor usar comillas

VALIDACIONES

24/05/2015PHP

 

Hasta ahora siempre había validado el tipo de dato en PHP por ejemplo usando la función is_numeric(). Pero he descubierto una manera bastante fácil de comprobar si una cadena es numérica, alfanumérica

PASO DE PARÁMETROS VARIABLE A UNA FUNCIÓN

27/02/2015PHP

 

Hay ciertas funciones de PHP en las que puedes en el que el número de parámetros a esa función es variable como la función unset: //En este ejemplo se le pasa un parámetro unset($var1); //En

CIERRE DEL PHP

27/02/2015PHP

 

Hace un año o así participé en un proyecto done no se cerraba el php (\'?>\') y nunca supe el motivo. En la empresa actual donde trabajo un compañero me preguntó que diferencia había entre cerrarlo y

RECORRER DIRECTORIOS

04/08/2015PHP

 

Hace poco descubrí una nueva manera de recorrer un directorio con PHP. Se trata de la función BLOB. No confundir con el tipo de dato blob de MYSQL.

VALIDAR FECHAS PHP

27/02/2015PHP

 

EN programación siempre ha sido bastante tedioso el tema de validar fechas pero hace un par de meses descubrí como validar fechas en PHP de una forma sencilla simplemente usando la fu

VALIDAR EMAIL

27/02/2015PHP

 

Hasta ahora siempre había validado los emails emails en PHP usando expresiones regulares. Pero un compañero me comentó una manera bastante fácil y sencilla para validarlos.

OPERADOR TERNARIO

27/02/2015PHP

 

No recuerdo la primera vez que usé el operador ternario, pero la verdad es que es más rápido de escribir y es más eficiente.
La estructura es ...

BASE_CONVERT

27/02/2015PHP

 

Llevo varios programando en PHP y hoy he descubierto una función que no sabía que existía. Sirve para convertir números de una base numérica a otra.

ENVIAR MAILS CON ADJUNTOS

27/02/2015PHP

 

En los diversos proyectos que he participado he tenido que mandar emails para notificar al usuario cualquier asunto relacionado con la web, como el alta, envío de texto informativo.

MÁSCARAS DE BITS

27/02/2015PHP

 

En algunos proyectos ciertos campos pueden tener varios estados y en vez de crear varios campos de la tabla se crea un solo campo para poder guardar los diferentes estados que puede tener dicho regist

OBTENER FICHERO CON CURL

27/02/2015PHP

 

Hay veces que las necesidades del proyecto requieren guardar un fichero o una imagen desde remoto en nuestro servidor. Hau una manera de hacerlo usando cURL.

ASERCIONES

27/02/2015PHP

 

Una manera que tiene php para depurar es el uso de las aserciones, assert(). El uso de las aserciones se debe usar mientras se depura el código y una vez depurado desactivarlas.

MONGODB Y PHP

27/02/2015PHP

 

Aprovechando que tengo tiempo libre me estoy dedicando a aprender cosas en las que ando más escaso de conocimientos relacionado con mi perfil.
MongoDB usa JSON y

INYECCIÓN DE SQL

27/02/2015PHP

 

La inyección SQL consiste en insertar código SQL para alterar la base de datos de la página web. Se suele hacer en los formularios de login o en los formularios de alta de usuario o cuando se sabe que

POST GET Y REQUEST

11/06/2017PHP

 

Esta explicación es una perogrullada pero seguro que alguno sabrá agradecer las diferentes maneras que tiene PHP para recoger parámetros:
-GET:Sirve para recoge

SESIONES EN SERVIDORES BALANCEADOS

27/02/2015PHP

 

Cuando se desarrolla una aplicación web, en este caso php, y se tiene dicha aplicación balanceada y hay sesiones hay que tener en cuenta la persistencia.

IMAGEN EN BASE DE DATOS

27/02/2015PHP

 

La mayoría de los sitios web tienen la opción de subir fotos por parte del usuario y hay dos opciones para hacerlo.

MODELO VISTA CONTROLADOR

27/02/2015PHP

 

El primer proyecto que hice con esta arquitectura fue para prisacom (grupo prisa) en el año 2006.

SYMFONY

27/02/2015PHP

 

Ayer empecé con el framework Symfony y la verdad es que pensaba que era más complicado. La verdad es que no está nada mal.

MAGIC FUNCTIONS

20/09/2015PHP

 

Hace tiempo que quería probar ésto y la verdad me ha sorprendido su funcionamiento.

PHP DETERMINAR IDIOMA DEL VISITANTE

27/02/2015PHP

 

Hace unos días me sugirieron hacer una versión de mi página en Ingles.

COMILLAS SIMPLES Y COMILLAS DOBLES

27/02/2015PHP

 

En php la diferencia de usar comillas simples y comillas dobles.