BIGDATA
El término big data describe cualquier cantidad voluminosa de datos estructurados, semi-estructurados y no estructurados que tienen el potencial para ser explotados para obtener información. ...
El término big data describe cualquier cantidad voluminosa de datos estructurados, semi-estructurados y no estructurados que tienen el potencial para ser explotados para obtener información. ...
En big Data se usan diversas herramientas. Hadoop es la tecnología más usada actualmente.NoSQL: Son bases de datos donde los datos almacenados no se almacenan en tablas y se escalan bien ...
Hadoop es un sistema de código abierto que se utiliza para almacenar, procesar y analizar grandes volúmenes de datos; cientos de terabytes, petabytes o incluso más. Hadoop surgió como ...
En el proyecto en que estoy trabajando ahora usamos Business Intelligence para generar los informes que nos pide el cliente. Para este proyecto usamos una base de datos oracle y como herramienta ...
Acabo de empezar un curso de marketing on-line y la verdad es que me está apreciendo interesantísimo y estoy aprendiendo cosas nuevas. Por ejemplo ciertos términos que he oído en alguna ...
Sigo avanzando en mi curso de marketing online y de bigdata y he aprendido una cosa nueva que es el método aida. Que consiste medir secuencialmente los efectos de un mensaje publicitario. Este ...
Sigo con mi aprendiendo sobre marketing online ya la verdad que había cosas que ya sabía por los puestos de trabajo que he tenido que eran en empresas orientadas al ecommerce. Pero aún así me...
Cuando he entrado en una página de ecommerce y visitaba un producto siempre veía una lista de productos relacionados pero no sabía que tenía nombre, simplemente pensaba que eran productos ...
Para definir charset en un sitio web basta con añadir AddDefaultCharset utf-8 en el fichero .htaccess o en el fichero principal de configuración del stio de apache...
Hay diversos modos de seguridad para evitar que te hackeen una página web y uno de ellos es despistar a los hackers mostrando una extensión de la página que no sea el verdadero. Me explico. Si...
Con el tema de SEO es importante tener una página web con urls amigables. Lo que hay que hacer es crear un archivo .htaccess en la carpeta del sitio web donde se quieren crear las url amigables....
Cuando tenemos un sitio web y al usuario se le muestra una pantalla de error, del servidor, siempre suele salir una página en blanco con texto en negro y explicando , en inglés, lo que ha ...
Hace un tiempo escribí sobre procedimientos y funciones almacenados en mysql y hoy voy a hablar sobre como crear cursores en mysql, que son bucles que sirven para recorrer el resultado de una ...
En mi página web tengo dos subdominios para los dos blogs que tengo y he tenido que crear un fichero .htaccess para redireccionar las subcarpeta sa dichos subdominios. La verdad es que ha sido...
Hace unos días escribí un post para enviar el contenido de una web comprimido en zlib. En este post voy a explicar como hacerlo con apache editando el fichero .htaccess. En internet he visto ...
El módulo de control de acceso de apache permite controlar el acceso a los diferentes directorios y ficheros del servidor dependiendo del nombre de la máquina o dirección IP del cliente. Las ...
MaxClients es una directiva de apache que indica el número máximo de peticiones que se pueden servir al mismo tiempo por el servidor, cualquier número que vaya más allá del límite se pone ...
CORS es el acrónimo de Cross-Origin-Resource-Sharing que permite hacer peticiones de forma asincrónica a través de Javascript desde un servidor a otro, para obtener información o recursos ...
Todas las imágenes que mostramos en nuestra web tienen su propia URL particular. Si cualquier otra persona utiliza ese mismo código en otra web, la imagen se va a ver igual. Es decir, que ...
En más de una ocasión es necesario mostrar una página de mantenimiento o mostrar una página de 'próximamente' cuando se va a lanzar un sitio web nuevo y se está implementando. Desde el ...
El fichero .htaccess es la primera línea de entrada de cualquier página web que usa Apache, así que también se puede convertir en la primera línea de defensa ante posibles ataques, ...
Los ataques DDoS (Distributed Denial of Service) se suele usar para la web atacada que deje de funcionar o para que el tiempo de carga se dispare. Cuando una web está siendo atacada mediante ...
en .htaccess se puede evitar el acceso a ciertos ficheros o directorios, como pueden ser los archivos de configuración del sitio o el fichero .htaccess vía web por ejemplo. La manera de ...
Cuando se crea un sitio web el fichero principal suele ser el fichero index ya sea con extensión php (según el lenguaje), htm o html. Pero se con apache yo lo voy a explicar para hacerlo desde ...
Hace un tiempo escribí que se puede permitir / denegar un sitio web por ip desde apache, puedes leerlo aquí. Pero en este post voy a explicar como bloquear el acceso por user agent. La verdad ...
Hace poco vi un artículo de como activar la depuración de errores en php desde apache y le eché un vistazo ya que no sabía como hacerlo. Ya que siempre lo había hecho desde el fichero ...
He estado mejorando la velocidad de acceso de mi blog gracias a la página pingdom, la cual te dice que mejorar de tu página web. Y una de las cosas que me decía que mejorase era la caché de ...
Los Server Side Includes o SSI, o Inclusiones en la parte Servidor, facilitan incluir contenido dinámico a documentos HTML estático, sin necesidad de usar un lenguaje de programación del lado ...
El hoisting en javascript es el comportamiento por defecto de ...
Mucha gente utiliza alerts para depurar en javascript. pero hay una manera más sencilla y más fácil y menos molesta. Se trata de usar la instrucción console.log(variable), donde variable es ...
Siempre que he tenido que validar fechas con javascript había que hacer una función que comprobase que el mes tiene 31, aparte de que el mes no fuese febrero ya que hay que comprobar si el año...
Llevo varios años programando páginas web y me he dado cuenta que a veces se hace un uso excesivo del Javascript. Haciendo que el navegador se ralentice y la carga de la página sea eterna. ...
Hace tiempo que aprendí a usar DOM para el tema del DHTML y añadir contenido dinámica mente con Javascript. Al principio, lo que hacía era añadir el HTML directamente usando la propiedad ...
Cuando se quiere usar las dos librerías en un mismo proyecto web se produce un problema al querer usar $(...) para los elementos HTML que se quieren tratar con DHTML. Para evitar conflictos ...
Cuando un sitio web tiene muchas imágenes, como puede ser un periódico, revista, la web de un fotógrafo, etc... lo ideal, para que la página no tarde mucho en cargar y consuma mucho ancho de ...
En este post voy a poner como evitar combinaciones de letras............
Aunque soy programador backend a veces me toca pegarme con el frontend, sobre todo con javascript y el otro día una página web me advirtió que tenía las mayúsculas activadas y estuve ...
En el proyecto en que estoy actualmente había un problema ya que en unas de las secciones de la web se mandaba un and mediante ajax y no se guardaba, ni el and ni lo que venía después, en base...
Una forma de obtener actualizaciones del servidor, ya sea Apache, Tomcat, o cualquiera es usando EventSource (también conocidos como Server-Sent Events) son eventos en tiempo real transmitidos ...
Por necesidades del proyecto actual, en el que soy parte, he necesitado detectar donde está el foco en un formulario y no sabía como hacer y la verdad es que nunca se me habría ocurrido que ...
Hace unos años tuve que obtener los parámetros GET en javascript por necesidades del proyecto. Javascript no tiene un array con los parámetros GET como php. Pero si que hay una manera bastante...
Nunca he tenido la necesidad de subir un archivo con ajax pero hace poco vi en una página web que convertía doc a pdf que tiene implementado la subida de archivos con drag and drop y la verdad ...
Una de las novedades de HTML5, aunque en internet explorer no fuinciona demasiado bien, es la funcionalidad de drag and drop. Aunque esta funcionalidad ya estaba implementada en javascript hace ...
Hoy he descubierto, por casualidad, que se pueden crear ficheros zip en javascript con la librería JSZip y sin la necesidad de utilizar ningún lenguaje adicional desde el lado del servidor. ...
En programación una promesa se usa cuando se realiza una función asíncrona, el ejemplo más claro para javascript sería el uso de ajax
Seguro que os extrañará el título de esté post de javascript ya que hasta ahora era algo bastante sencillito, se hacía con la palabra reservada var. Pero es que hay novedades a la hora de ...
Hace poco que he sabido que se pueden guardar sesiones en javascript, esto se consigue de manera similar a como funcionan las cookies. Para guardar sesiones en javascript hay que usar el objeto ...
Hace un tiempo escribí un post de como cachear contenido con memcached en php y hace poco he descubierto que se puede cachear contenido en javascript algo que puede resultar bastante útil y se ...
Hace un tiempo escribí un post de como evitar combinación de letras en javascript pero hoy voy ha hbalr justo de lo contrario de como crear combinación de teclado en javascript. Hay varias ...
Hay una libreria en javascript que ayuda a detectar las funcionalidades del navegador y que se llama features.js. Su funcionamiento es bastante sencillo. Así permite y facilita programar con ...
Revisando uno de los blogs que suelo visitar sobre programación me he enterado que hay un evento de javascript que detecta cuando se pega contenido en un textarea o en un input text. El evento ...
Hasta ahora si no se declaraban variables en javascript no pasaba nada, no se producía ningún error y para declarar variables obligatoriamente en javascript hay que usar la directiva 'use ...
Una de las novedades que tiene javascript es asignar valores por defecto a los parÃÂÃÂÃÂámetros de las funciones. Igual que se hace en ............
Es posibleinvocar botón desde javascript. Simplemente hay que hacer lo siguiente...
Cuando se produce un error en javascript,se suele mostrar un error o se para la ejecución de la wbe pero con las se peude evitar que la página se deje de ejecutar o tenga comportamientos ...
Para saber si una cadena termina por una determinada cadena hay que usar la función endsWidth indicando la palabra o carácter.Con el siguiente ejemplo se puede ver como funciona: var str =...
Para obtener la información relativa al navegador que está utilizando el usuario hay que usar el objeto navigator en javascript. Dicho objeto nos devuelve el idioma del navegador, los mimeTypes...
Para saber como exportar una tabla a excel en javascript es bastante sencillo solo hay que crear una tabla en javascript con un id único y espceificar el tipo de documento: var dataType = ...
Hace un tiempo hablé sobre las promesas en javascript y hoy quiero hablaros de como ejecutar promesas en secuencia o paralelo en javascript de una ...
En este post os voy a hablar de los generadores en javascript este tipo de funciones, las generadoras, pueden ser detenidas en medio de la ejecución ...
Antes de empezar con este post ¿Qué es percona? Percona es una empresa de software y servicios especializada en bases de datos MySQL y desde sus orígenes ha mantenido el 100% de compatibilidad...
En los diferentes proyectos que he trabajado cuando se ha recuperado una fecha de mysql muchas veces se ha recuperado la fecha con la hora en formato diferente a dd/mm/aaaa y luego se procesaba ...
A la hora de diseñar una base de datos hay que tener en cuenta, entre otras muchas cosas, el número de consultas que se van a realizar y el número de datos que se van a modificar / insertar. ...
Hay una manera bastante sencilla de realizar copias de seguridad del contenido de una una tabla de una base de datos a un fichero plano y también de volver a cargar dicho fichero a la tabla ...
Hace un tiempo escribí sobre procedimientos y funciones almacenados en mysql y hoy voy a hablar sobre como crear cursores en mysql, que son bucles que sirven para recorrer el resultado de una ...
Hace un tiempo escribí un post sobre el tipo de dato enum en mysql y ahora voy a describir como recuperar valores campo enum en mysql. La consulta es bastante sencilla pero hay que hacerla sobre...
En MYSQL también se permite el manejo de TRIGGERS como en ORACLE y la verdad es que resulta bastante sencillo. Su código no es nada complejo si se tienen nociones de programación.
En MySQL es posible crear procedimientos y funciones como en cualquier lenguaje de programación. No es difícil, solo hay que conocer la sintaxis y ya se pueden crear. A continuación pongo un ...
En bb.dd una VISTA es una tabla virtual, que puede estar formada por varias tablas, que es resultado de una consulta. El motivo principal de las vistas es agilizar el proceso de consulta de ...
MySQL permite la opción de guardar las consultas en caché, lo más lógico es guardar las consultas de tipo select ya que las consultas de tipo insert, delete o update rara vez van a coincidir....
Siempre había pensado que MySQL solo tenía dos motores de almacenamiento MyISAM y InnoDB, escribí un post en este blog para hablar de sus diferencas. Pero hace poco descubrí que MySQL tiene ...
En MySQL hay una manera de saber si se están usando el tipo de datos óptimo para una tabla. Es una manera de hacerlo bastante poco conocida y la verdad es que de utilidad. Basta con usar el ...
Cuando en una base de datos se tiene que hacer una búsqueda por texto se usa el operador LIKE y si se quieren mostrar varios resultados que concuerden con esa búsqueda se usa LIKE '%%'. Pero ...
En mysql hay una sentencia que permite optimizar las queries usadas para obtener datos de la base de datos. Dicha sentencia es explain que se usan poniendo dicha sentencia justo antes de la ...
Uno de los problemas más comunes de mysql son las consultas de sql que tardan demasiado tiempo en ejecutarse. Un opción es analizar la query con la opción EXPLAIN. Otra opción es activar el ...
Una transacción es un conjunto de operaciones sql que se ejecutan como un único bloque, es decir, si falla una operación fallan todas. Es una unidad única de trabajo. Si una transacción ...
La base de datos information_schema de Mysql almacena todo lo relacionado a todas las bases de datos creadas en el servidor de mysql y de esa base de datos se pueden obtener diferentes datos como...
El error too many conections de mysql significa que ha mysql le están llegando demasiadas peticiones. Para arreglar este problema hay que cambiar la configuración de mysql.Para saber el número...
Hay una funcionalidad de MySQL que es poco conocida que es procedure analyse y se añade al final de la consulta. Elr esultado es un listado con los nombres de los campos de la consulta con los ...
Una forma de optimizar el acceso a nuestra base de datos myswl se pueden establecer prioridades a las queries. La verdad es que es bastante sencillo: -INSERT DELAYED: Añadiendo el parámetrod ...
Un índice es un puntero a una fila de una determinada tabla de nuestra base de datos, es decir, asocia el valor de una determinada columna (o el conjunto de valores de una serie de columnas) con...
En MySQL se pueden usar variables como en los lenguajes de programación y puede resultar bastante útil. Y se puede guardar el valor de una consulta Select a una variable.El sintaxis para ...
El modelo ACID es un conjunto de principios de diseño de base de datos que enfatiza aspectos de fiabilidad que son importantes para datos de negocio. MySQL incluye componentes como el motor de ...
Buscoando información sobre MySQL en internet me he encontrado con varios posts de como optimizar MySQL cuando se usan bases de datos con motor de almacenamiento InnoDB.Cuando se instala MySQL ...
Este post va a ser muy breve. Para obtener la ip y el puerto de la base de datos MySQL basta con lanzar la siguiente query: SHOW VARIABLES WHERE Variable_name IN ( 'hostname', 'port')...
Siempre hay que buscar la manera de optimizar la recuperación de información de una base de datos desde un buen esquema de base de datos, uso de índices hasta hacer unas queries óptimas.En ...
Revisando un manual que tengo sobre MySQL he visto que en los JOIN se puede usar la directiva USING en vez de ON cuando los campos tienen el mismo nombre.Voy a poner un ejemplo para que quede ...
Hacer copias de seguridad de la base de datos, con cierta regularidad es bastante importante. En Mysql hay varias formas de hacer copias de seguridad: mysqldump: Este comando, se encarga de ...
Hoy he tenido que buscar las veces que se repetía un campo en una misma tabla. Aunque no he tenido que hacer en oracle es prácticamente igual en mysql. La query es: SELECT campo, COUNT(*) ...
Los eventos en MySQL consisten en la ejecución planificada de ciertas sentencias que pueden ser llamadas a procedimientos almacenados o simples conjuntos de sentencias SQL. La ventaja de estos ...
mysqlcheck es un comando de MySQL que sirve tanto para analizar, reparar y optimizar todas las bases de datos de un servidor. Para poder usar este comando hya que tener permisos de root y hay que...
Es útil poder modificar la contraseña del usuario root, ya sea por la instalacion o porque se ha perdido la contraseña de root de MySQL. Para poder cambiar la contraseña de root de MySQL, es ...
Para saber cual es el tamaño de nuestra base de datos MySQL hay que ejecutar la siguiente sentencia...
El atributo unsigned guarda el valor positivo del tipo de dato seelccionado. Así que si voy a tener un campo que almacenará un precio, una edad, etc... convendría usar este atributo ya que ...
Hay veces, que sin darnos cuenta intentamos insertar valores duplicados en mysql y claro salta un error, sobre todo por duplicidad de primary key ante ésto mysql ofrece dos soluciones: INSERT...
Siempre que se programa un sistema de contenidos con paginación, como pueden ser los comentarios de una noticia, o mostrar los post de un blog se suele programar con dos queries: Una query ...
Como es sabido por todos el puerto por defecto de MySQL es el puerto 3306 (tcp). Las razones por las que cambiar este puerto son: si se tienen varias bases de datos MySQL sin riesgo a que vaya...
MySQL permite bloquear tablas para que diversas queries puedan ejecutarse al mismo tiempo sin distorsionar sus resultados. Este bloqueo puede ser de escritura o de lectura. Después de realizar ...
En las tablas MyISAM no hay diferencia entre las dos opciones. La única diferencia es que los índices de clave primaria no pueden contener valores NULL. De esa manera, un índice PRIMARY es ...
MySQL permite la creación de tablas temporales que permiten acceder a los datos de una manera más óptima ya que se crea una versión en memoria de un bloque de información almacenado en una ...
Por defecto MySQL no permite el acceso desde otro servidor, pero se puede cambiar dicha configuración para conectarse a una base de datos MySQL.Para permitir ésto MySQL hay que modificar el ...
En mi post sobre transacciones con varias queries en MySql no comenté la posibilidad de añadir puntos donde, si hay un problema, hacer un rollback a un punto determinado y no perder toda la ...
Nunca me había planteado la diferencia entre charset y collation en MySQL y la verdad es que si que es algo que es importante. charset:Define el juego de caracteres con el que MySQL guardará...
Hace un tiempo escribí un post de como crear triggers en mysql pero no comenté que se podían activar y desactivar y puede resultar útil en determinados momentos. Para activar un trigger en...
Hace un tiempo escribí un post sobre los motores de almacenamiento en Mysql y hoy quiero commentar el motor de almacenamiento federated que permite tener replicas de tablas en mysql. Para saber ...
La gestión de errores en mysql no es difícil en cierto modo. El único impedimento que veo es que hay que conocerse los código de errores para tartar el error que se quiere gestionar. La ...
Hoy he aprendido una funcionalidad nueva en MySql que es la función FIND_IN_SET y se usa en campos en los que sus elementos están separados por comas. Por ejemplo en la base de datos de mi blog...
Hace un tiempo hablé de la inyección de sql y el otro día aprendí lo que era la blind injection o la inyección ciega. La blind injection consiste en utilizar la inyección SQL y se evidencia...
Los join se usan para recuperar datos de varias tablas al mismo tiempo y las tablas tienen que estar relacionadas de algún modo, normalmente mediante un id.En Mysql, como en la mayoría de las ...
Una manera de optimizar mysql es usar la fragmentación de tablas en MySQL que consiste eb reducir la cantidad de lecturas físicas a la base de datos en la lectura de datos de base de datos. ...
Hace poco hablé sobre las fragementacion de tablas en MySQL y en este post quiero hablar de la fragmentación horizontal en mysql ya que es útil si se van a manejar grandes volúmenes de ...
El tipo de dato enum en mysql representa una enumeración. Puede tener un máximo de 65535 valores distintos y es una cadena cuyo valor se elige de una lista enumerada de valores permitidos que ...
Mcuhas veces se realizan consultas MySQL para mostrar totales, por ejemplo, totales por categoría y es fácil hacerlo usando el agregador count de MySQL por ejemplo con mi blog: SELECT ...
Existe una sentencia, que es una alternativa al INSERT INTO, en la que se diferencia en que si existe algún registro en la base de datos con el mismo valor para una clave primaria o única, se ...
Hace poco descubrí que se pueden devolver las consultas MySQL en json y la verdad es que es bastante sencillo. Hay que usar la función JSON_OBJECT. Voy a poner varios ejemplos para entenderlo ...
El tipo de dato set en mysql representa un conjunto ed cadenas. Puede tener un máximo de 64 valores distintos y es una cadena cuyo valor se elige de una lista enumerada de valores permitidos que...
Hace eun tiempo hablé en este blog de programación sobre blind injection y sobre la inyección de sql y en este post quiero hablar de como funcionan las sentencias preparadas en mysql que es ...
Siempre que se instala una base de datos MySQL siempre viene creada con un usuario root y sin ninguna contraseña pero hay veces que es necesario crear diferentes usuarios con diferentes ...
Hace poco escribí un post de como crear usuarios en mysql y como otorgarles permisos.Hoy voy a comentar como ver privilegios de los usuarios: SHOW GRANTS;: Muestra los privilegios de todos ...
Para mostrar los procesos en ejecución en mysql y así saber que procesos hay en ejecución y que usuario lo está ejecutando hay que hacer es lanzar el comando show processlist; donde nos ...
Hay en ocasiones que en varios proyectos se necesitan hacer varias inserciones y actualizaciones en la base de datos en bloque y evitar que si hay dos, o más, solicititudes de dichas ...
En este post os cuento como saber en que tabla está un campo en mysql es una query bastante sencillita SELECT DISTINCT TABLE_NAME FROM ...
Hace bastante tiempo hable de como realizar conexiones a mysql usando la librería mysqli de php.Hoy voy a hablaros de como crear conexiones persistentes usando mysqli. Pero ¿qué es una ...
Hace unos días hablé de lasconexiones ssh en php y me acordé que unos meses hablé de la herramienta deployer, una herramienta de integración contínua que está desarrollada en php para ...
Igual que se pueden realizar conexiones ftp en php también se pueden realizar conexiones ssh. Para poder realizar conexiones ssh en php se puede usar la librería phpseclib de fuelphp. La verdad...
El componente Console de symfony permite la creación de interfaces de línea de comandos para después emplearse en tareas como cronjobs, importaciones, etc...En este post voy a explicar como ...
Docker nos permite virtualizar entornos para trabajar en un mismo entorno con máquinas diferentes. Esto significa que si en un equipo de programación una persona desarolla en windows, otra en ...
Hace un tiempo hablé de las excepciones en php cuya estructura es: try { // Algo va mal } catch (MySpecialException $exception) { Log::error('Algo fue mal'); } Pero las ...
En este post os voy a hablar de las nuevas funciones en php 8 que la verdad son bastante útiles: str_contains: Antes de php8 había que usar las funciones strpos o strstr, las cuales, eran ...
Una de las novedades de php 8 son los mixed type es nuevo pseudo-tipo que se añade al sistema de tipos de php, el tipo mixed. Este pseudo-tipo te permite declarar un valor de cualquier tipo sin ...
Una novedad de php 8 es el Constructor Property Promotion. Cuando definiamos una clase en php primero se declaraban los atributos y luego se inicializaban en la clase constructor pero gracias al ...
Una de las novedades de php 8 son los union types que permite especificar varios tipos para un argumento y el retorno de una función. Los union types son una colección de dos o más tipos ...
En php la diferencia de usar comillas simples y comillas dobles en una cadena es que cuando se usan comillas dobles puedes poner una variable dentro de la cadena y php la procesa mostrando su ...
Hace unos días os hablé de phpStan. Y hoy os quiero hablar de phpSalm que es una herramienta bastante parecida.Psalm es una herramienta de análisis estático que intenta profundizar en su ...
Hace un tiempo hablé de los estandares de programación psr en php y en este post voy a hablar de como adaptar el código php a los standares psr con php-cs-fixer.Cuando el código de un ...
Hace unos días me sugirieron hacer una versión de mi página en Ingles. Después de estar pensando como hacerlo busqué la manera de saber el idioma de quien visita la web. Viene especificado ...
Hace tiempo que quería probar ésto y la verdad me ha sorprendido su funcionamiento. Nunca lo he visto, ni usado, en los proyectos en los que he participado. Pero nunca está de más saber como ...
La herramienta phpStan es una herramienta de análisis estático permite analizar el código php y lo bueno que tienen estas herramientas es que no necesitan ejecutar el código para realizar sus...
Para trabajar con ficheros .env en php existe una librería que se encarga de gestionar dichos ficheros y guardar las variables de entorno en el array superglobal $_ENV. Dicha librería se llama ...
Una de las novedades de php 7.4 es el separador literal numérico. Que consiste en usar guiones bajos para separar valores numéricos y así facilitar la lectura de dicho número. El ojo humano ...
TDD son las siglas de Test Driver Development.TDD y se basa en la idea de realizar pruebas unitarias para el codigo a implementar. Normalmente, primero se programa y luego se realizan las pruebas...
Muchas veces he visto en internet que se preguntaba cuando usar Self o This en php y la respuesta es bastante sencilla: Self hace referencia a la clase actual y se usando cuando instancia ...
Una de las novedades de versión 7.4 de php son las funciones arrow, también conocidas como short closures y son una forma más simplificada de escribir funciones anónimas, o closures.Las ...
El type variance en php es una de las novedades de la nueva versión 7.4 de php y consiste en poder cambiar el tipo de dato que se pasa por parámetro en un método y que es devuelto de una hija ...
El primer proyecto que hice con esta arquitectura fue para prisacom (grupo prisa) en el año 2006. Y la verdad es lo he ido usando en los diferentes proyectos que he usado. Es bastante cómodo ya...
El operador spread en php o operador de esparcimiento es una novedad de php 7.4 hace lo mismo que array_merge para combinar los elementos de uno o varios arrays. Las ventajas de usar operador ...
La mayoría de los sitios web tienen la opción de subir fotos por parte del usuario y hay dos opciones para hacerlo. 1ª Subir la imagen a un directorio, definido para guardar las imágenes, y ...
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 de dichas sesiones y para conseguirlo la...
Hoy he descubierto la manera más fácil de como obtener array con con los ementos de una fecha sin tener que hacer explode. Es decir, que si yo tengo una fecha, puedo obtener el mes o el día o ...
Actualmente estoy usando el bundle easyadmin de symfony y la verdad es que es bastante sencillo, ya que con un fichero de configuración, en formato yaml, es suficiente. Aunque se pueden hacer ...
Hace poco descubrí la herramienta de deployer para hacer despliegues de proyectos en servidores. Y la verdad es que es bastante sencillo de usar y de configurar. Aunque no creo que sea tan ...
Para poder ejecutar varias queries con mysqli en php hay que usar la función multi_query ya sea de la manera $obj_mysqli->multi_query('query 1;query 2;'); o de la manera mysqli_multi_query( ...
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 recoger parámetros pasados por la ...
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 ...
Hace un tiempo escribi sobre los principios KISS y ahora quiero hablaros sobre el principio dry que significa Don`t Repeat Yourself que básicamente significa, y que es obvio, que no tengas ...
MongoDB usa JSON y en PHP se gestiona todo con arrays. Y es el caso de las bases de datos noSQL. La verdad es que es bastante sencillo de aprender y usar: -Crear la base de datos: Se puede ...
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. EL uso de las ...
Hay veces que las necesidades del proyecto requieren guardar un fichero o una imagen desde remoto en nuestro servidor. Hay una manera de hacerlo usando cURL. //url donde se encuentra el archivo ...
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 ...
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. Pero nunca ...
Ya expliqué como crear procedimientos y funciones almacenados en mysql y ahora quiero explicar como llamar a funciones y procedimientos almacenados de mysql en php. La verdad es que es bastante ...
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. Si no sabía que existía es que nunca me...
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: variable = condición ? valor si cierto : valor...
Cuando en php se produce un error se escribe en el fichero especificado en el fichero de php.ini en en valor error_log, que se puede consultar con la función phpinfo, o también el fichero de ...
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. Y es usando la ...
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 función ...
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. Con esta función no es necesario abrir el ...
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 ...
Hace un tiempo expliqué en un post como funcionan las funciones anónimas en php y ahora quiero comentaros como pasar una funcion como parámetro de otra función en php y la verdad es que es ...
Ya hay varias aplicaciones y webs que usan chatbots y pueden estar diseñados para realizar tareas sin la ayuda de un humano. Por ejemplo, como pedir una pizza o marcar una fecha en el calendario...
Hay ciertas funciones de PHP en las que puedes en el que el número de parámetros a esa función es variable, que peudes pasar uno, dos, hasta n parámetros como la función unset: //En este...
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, ...
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 ...
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.La manera más ...
Un namespace o espacio de nombre es un contenedor que nos permite agrupar el código para tenerlo más ordenado.
En php se permite el uso de funciones anónimas desde la versión 5.3.0. Una función anónima, o expresiones lambda, es una función que no tiene nombre, y por tanto no está enlazada a ningún ...
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. Con este post quiero hacer un ...
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 ...
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. Pero hay una ...
Antes de ponerse a ver que son los dobles de prueba en phpunit creo que hay que leer sobre las pruebas unitarias con phpunit y sobre las aserciones. Hay funcionalidades que no dependen de otros ...
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. La mejor descripción esta en una situación ...
Singleton es un patrón de diseño, que tiene como propósito asegurar que solo se pueda crear una instancia de la clase y proporcionar un punto global de acceso a ella, eso significa que no se ...
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 ya que el acceso a la caché de memcached...
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 uso. ...
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. Algo que todos los ...
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 variable que coincida con ese ...
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 y mientras dicho ...
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 demasiado las ...
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 como ...
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. Aunque, como todo, siempre ...
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. No le di importancia hasta wue en un ...
Hace un tiempo escribí sobre el patrón de diseño singleton.Ahora voy a escribir sobre el patrón de diseño registry.La idea de este patrón es crear una clase donde se permita crear ...
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 ...
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 ...
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.En si lo que hace ...
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 ...
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 VBScript o...
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.este tipo de ataque ...
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ódigo ...
Revisando las novedades de php 7 me he encontrado con este nuevo operador de comparación que también se denomina spaceship. Este operador se escribe ...
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 mysqli o pdo.Uno de los ...
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. Pero hay que tener cuidado ya que el sql ...
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 que ejecuta cada instrucción individual en forma ...
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, entre ...
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. Para conectarme a la base de datos usé la función ...
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. No hay que decir que hace falta un ...
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 en tiempo real ...
Antes de explicar la inyección de dependencias hay que explicar el concepto de inverión de control que se puede definir como el proceso donde los objetos son suministrados a las clases que los ...
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 variables comprobando ...
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. Implementé ...
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 y ...
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. ¿Y para qué ejecutar clases de java dentro de php? Pues hay ...
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...
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. Los traits reducen ...
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. Es el equivalente de los jar de java.Un archvo ...
El fork de procesos consiste en la creación de hilos de un proceso para distribuir la carga de ejecución en varias instancias de php. Cada instancia o hilo llevará a cabo una tarea.Como en ...
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 el...
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 ...
La función mail de php es bastante vulnerable para ser hackeada, por eso se recomienda no usar dicha función. Cuando tenemos un formulario de contacto para que el usuario de nuestra web ...
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 php.ini y hay que tener ...
Hace un tiempo escribí una entrada de como validar emails en php de una forma sencilla y evitar el uso de expresiones regulare. En esta entrada voy a explicar si el email es válido, pero no en ...
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 mismo ...
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 o el acceso que van a ...
Hace unos meses escribí un post sobre usar caché, para cachear contenidos, en php, más concretamente lo escribí sobre memcached, aunque hay varios disponibles.Hoy os voy a hablar de como ...
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...
Hace unos meses escribí sobre el tratamiento de cadenas con heredoc. Hoy he descubierto que existe el nowdoc. Nowdoc es a los strings con comillas simples lo mismo que heredoc es a las comillas ...
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 ...
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 asigna ...
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 valor ...
Hoy me he enterado de la existencia del principio DRY y en php existe un software que sirve para detectar código duplicado: PHPCPD que significa PHP Copy/Paste Detector, es decir, detector de ...
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 ...
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 ...
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 para la ...
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 de las tarjetas SIM...
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. Voy a poner un ...
Como en la mayoría de lenguajes de programación, php usa las llaves ({}) para abrir y cerrar funciones, bucles y estructuras de control. Pero hay una sintaxis alternativa de las estructuras de ...
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. Pero php tiene una función que si se le...
Hoy he integrado Twitter en mi blog de programación tanto para publicar en Twitter al escribir un post y recupera los Twitter de los post de mi blog. O sea que este post se tweetará sin tener ...
Una manera sencilla de tener un proyecto php en varios idiomas es usando las funciones gettext lo que se denomina i18n que significa internacionalización y localización, que es poder usar ...
Cuando tenemos un array multidimensional en php puede que solo nos interese una sola columna de dicho array. Para obtener la columna que nos interesa de un array multidimensional hay que usar la ...
Llevo ya un tiempo oyendo hablar de la programación funcional y la verdad es que me parece interesante este paradigma de programación. Una ventaja de la programación funcional facilita la ...
Siempre que escribo un post en mi blog se autopublica en twitter con la categoría del post como hastag así me ahorro el tener que publicarlo yo en twitter. Siempre se pone un enlace a la url ...
Estoy aprendiendo a hacer páginas web con Symfony 3 y la verdad es que me está resultando bastante sencillo. Los bundles en Symfony 3 son módulos, paquetes o plugins, teniendo cada uno de ...
Despues de aprender como crear bundles en Symfony 3 ahora toca aprender a crear entidades en symfony 3. Las entidades son el modelo dentro de la arquitectura MVC, es decir, nos van a permitir ...
En muchos proyectos se incorpora un buscador para facilitar el acceso a información de un medio online, un producto de una tienda, etc...El desarrollar un buscador en php no es complicado. Hay ...
Después de aprender a crear bundles y entidades he aprendido a crear servicios en Symfony 3.Un servicio en Symfony 3 son funcionalidades globales que vamos a usar en nuestro código como mandar ...
Los principios solid son una 5 reglas establecidas por Robert C. Martin (Uncle Bob) , que escribiío el libro de code clean, donmde se habla de como escribir algoritmos fáciles de entender y ...
Para obtener los permisos de un fichero en php hay que usar la función fileperms la cual nos devolverá todos los permisos del fichero, o directorio, pasados por parámetro. Funciona de la ...
Una de las grandes desventajas que tenía php era el tipado. Pero con la nueva versión 7 parece que que lo han arreglado usando declare(strict_types=1);. Con el siguiente ejemplo se va a ve ...
Supongo que la mayoría de nosotros que ha participado en algún proyecto, en el que hayan participado varias personas, nos hemos quejado de que el código es un desastre y que hay código que no...
Hace poco tuve que hacer una pequeña aplicación con slim y tenía que seguir el patrón MVC. Estuve un buen rato investigando como hacer controladores con slim y todos los ejemplos que veía ...
Llevo ya unos años trabajando como programador y recuerdo que en mi primer trabaj como programado fue programando en coldfusion y tuve que controlar una funcionalidad del código con una ...
Ayer escribí un post sobre la gestión de excepciones en php y hoy voy a comentar la gestión de errores en php. Aunque no todos los errores van a poder ser manejados con el post de hoy. Para ...
Sé que muchos pensaréis que este post es bastante obvio pero seguro que lo que no sabe mucha gente es las reglas para los nombres de variables en php. Lo primero es que php es sensible a las ...
Hace un tiempo escribía sobre los principios SOLID y hoy voy a hablar de los principios kiss. En este caso kiss significa Keep It Simple, Stupid (Mantenlo sencillo, estúpido).El principio KISS ...
A partir de la versión 5.4 de php se incluye un servidor web embebido y se ha desarrollado para programar en entornos locales y se desaconseja su uso en producción. Yo lo estoy usando en los ...
Hace unos meses hice un curso por internet sobre la introducción a big data y la verdad es que me pareció interesante y escribí sobre hadoop y MapReduce y ahora he creado un ejemplo de ...
En este post voy a explicar, de forma muy sencilla, como crear una API en php. Pero ¿qué es una API? API es el acrónimo de Application Programming Interfaces (Interfaces de programación de ...
He estado aprendiendo Symfony por mi cuenta y ayer terminé de migrar otro blog que tengo, aunque no escribo hace tiempo, a Symfony 3 y he tenido que aprender a como personalizar páginas de ...
En mi actual proyecto estamos usando Zend framework y estaba haciendo un formulario que funcionaba perfectamente pero al agrupar los elementos de dicho formulario usando $this->addDisplayGroup ...
Cuando se prepara una query en zend hay veces que es mejor saber que query va a lanzar a la base de datos y para poder ver query en zend hay que ejecutar $sql = $select->__toString(); y mostrar ...
Para comprobar si una variable existe en php se puede usar la función isset o la función get_defined_vars. La segunda opción es la mejor ya que cuando se tiene una variable con valor null ...
Hace poco he estado mirando como funcionaba wordpress y me surgió la duda si con wordpress se podía trabajar con otras bases de datos aparte de la bases de datos de wordpress. Para poder ...
¿Qué es un token? Un token es una cadena alfanumérica con caracteres aparentemente aleatorios y se usa para identificar a un usuario y garantizar que pueda realizar determinadas operaciones....
Hace un tiempo escribí que son los namespaces en php y tuve que explicar en otros artículos como usar el standar psr-4 y en otro post que es composer. Así que es mejor explicar como usar ...
Siempre he usado el for y el foreach para recorrer arrays en php pero he descubierto los generadores en php que permiten usar foreach para iterar datos de tal modo que no se necesite cargar ...
En muchos de los proyectos en los que he participado he tenido que modificar imágenes para adaptarlas al proyecto. Lo que más he tenido que hacer ha sido redimensionarlas y reducir su peso ya ...
Siempre que se realiza una página web que tiene gestión de usuarios hay que guardar el usuario y la contraseña en una base de datos para que pueda acceder a dicha página web y dicha ...
Las pilas y colas en php son una lista doblemente enlazada, en ambas direcciones. Son bastante sencillas de usar. Seguro que muchos programadores de php usan arrays que permiten "simular" una pila y u
Muchos sitios web hechos en php mandan correos, por ejemplo, un ecommerce con los detalles del pedido, un sitio web con usuarios con envío de contraseña, etc... Y hay que tener especial cuidado...
En php hay varias maneras de ejecutar un comando, ya sea en linux o en windows como la función shell_exec o exec. Pero hay una manera bastante sencilla, aunque a mi no me gusta que es el usando ...
En muchos lenguajes de programación se usan las anotaciones para indicarle a la aplicación pare definir ciertos comportamientos o como se van a tartar los datos. Dichas anotaciones están ...
Hace poco que empecé a usar redis y la verdad es que es bastante versatil. Redis es una base de datos clave-valor siendo no relacional. El uso de redis es parecido a memcached aunque permite ...
Para establecer redis como gestor de sesiones en php solo hay que modificar el fichero de configuración php.ini (haciendo copia de seguridad antes) y cambiar los siguientes valores: - Buscar ...
En este post voy a hablar de las pruebas unitarias con phpunit. Una prueba unitaria consiste en comprobar el correcto funcionamiento de una funcionalidad desarrollada. Por ejemplo si se ha ...
Hace poco escribí un post sobre pruebas unitarias con PHPUnit y las pruebas dobles con PHPUnit. Ahora quiero hablar de las fixtures en phpunit. En todos los ejemplos que he visto de PHPUnit las...
Las variables supergloblales en php son variables pre establecidas en php y que siempre están disponibles en todos los ámbitos, es decir, desde cualquier función, clase o archivo PHP, sin ...
Hasta ahora sabía obtener el navegador de usario en php y era usando $_SERVER['HTTP_USER_AGENT']. Pero hoy he descubierto como obtener las características del navegador del usuario en php. La ...
Para generar ids únicos en php hay que usar la función uniqid();. Esta función genera un id único basado en la hora actual en microsegundos .Esta función no crea valores de tipo string ...
Los métodos encadenados en php consiste en llamar varios métodos de un objeto en una misma línea, basta con añadir al final de cada método: return $this; Con el siguiente ejemplo se ...
Hace poco escribí un tutorial sobre easyadmin de symfony y ahora os quiero escribir sobre como proteger el admin con contraseña en symfony sin tener que hacer un sistema complicado de ...
Hace bastante tiempo os hablé de las pruebas TDD y de las pruebas unitarias. Hoy os quiero hablar de las pruebas bdd, behavior-driven development, en php usando behat.¿Qué son las pruebas ...
Hace un tiempo os hablé de las nuevas funciones en php 8 quería explicar la expresión match en php 8 con las que se puede sustituir el switch case. Características de la expresión match en ...
Llevo ya unos años programando en php y la verdad es que me he encontrado varias veces con el error Cannot modify header information - headers ...
Hace un tiempo os hablé de composer. Dentro de composer se pueden añadir unos scripts que se pueden asociar a un determinado evento para que sean ...