Ojo con las compararciones en PHP

En PHP hay que tener cuidado al comparar dos valores cuando uno de ellos es una cadena. Para ver el problema he creado la función «comparar» donde vemos si un valor es igual a cero o no: Los resultados serán: 123 se convierte en 123, por lo tanto: (123 == 0) -> false 123 se … Leer más Ojo con las compararciones en PHP

Convertir string a url friendly en PHP

Esta función la suelo necesitar bastante a menudo. Por curiosidad me puse a buscar y encontré ésta función que convierte cadenas de texto a formato url: NOTA: En Laravel tenemos la opción de usar Str::slug() que funciona más o menos bien. La función para convertir a formato «url-friendly» paso a paso Para entender mejor lo … Leer más Convertir string a url friendly en PHP

Consejo rápido sobre los nombres de las clases en PHP

Si usas un verbo para el nombre de una clase es muy probablemente que esa clase esté mal pensada. Si ves que la clase no se entiende sin el verbo puedes tener lo que llaman en inglés «code smell» (código que apesta). Por ejemplo: Es un nombre que debería ponerte en alerta al verlo. Un … Leer más Consejo rápido sobre los nombres de las clases en PHP

¿Qué es un ataque CSRF?

Por simplificar mucho: un ataque CSRF (Cross-site request forgery) consiste en hacer una petición a un sitio donde estás logueado sin que te enteres. Imagina que tu aplicación tiene esta URL para borrar un producto a través de una petición POST: misitio.com/producto/123/borrar Por suerte esa URL solo funciona si estás logueado como usuario «admin». Así … Leer más ¿Qué es un ataque CSRF?

¿Cómo es mejor almacenar las sesiones de usuario en PHP? ¿Fichero, Base datos? ¿Redis?

Esta es una pregunta que muchos nos hemos hecho muchas veces y da para un artículo entero. Pero aquí os dejo unas ideas rápidas: Si tu web tiene poco tráfico no importa demasiado. Apenas vas a notar diferencia así que no pierdas tiempo con esto al principio. Puedes dejar esta decisión para más adelante. Si … Leer más ¿Cómo es mejor almacenar las sesiones de usuario en PHP? ¿Fichero, Base datos? ¿Redis?

Cuidado con el operador ternario, ‘?’ en PHP

Hay un detalle con el operador ‘?’ con el que hay que tener cuidado. Es posible que alguna vez te hayas encontrado con este problema: Posiblemente esperarás que se muestre: Gorka es mi nombre. Pero en realidad se muestra: Gorka Esto se debe a que la última cadena pasa a formar parte de la expresión … Leer más Cuidado con el operador ternario, ‘?’ en PHP

¿Qué es mejor: array_filter o foreach?

Imagina que tenemos una lista de elementos y queremos saber si alguno de ellos es un email válido. La lista podría ser algo así: Para solucionar el problema seguramente recurrirías a un foreach: Pero tenemos otra opción que muchos programadores no conocen (o no han usado nunca), se trata de la función array_filter. Usando esta … Leer más ¿Qué es mejor: array_filter o foreach?

Llamar a una función con una variable en PHP

Si a una variable que contiene el nombre de una función le añadimos un paréntesis estaremos llamando a la función:

function hola()
{
    echo "Hola!\n";
}
 
$nombreFuncion = 'hola';
 
$nombreFuncion(); // Esto funciona
'hola'(); // ¡Y esto también!

Seguro que la primera forma ya la conocías ¿pero sabías que podías hacerlo con una cadena?