Arrays en PHP: Guía Completa con Ejemplos

Arrays en PHP — Guía completa y detallada

Resumen: Esta guía cubre desde los conceptos básicos hasta temas avanzados sobre arrays en PHP. Incluye ejemplos comentados, funciones comunes, buenas prácticas, rendimiento y ejercicios para practicar.


Índice

  1. ¿Qué es un array?
  2. Cómo crear arrays
  3. Acceder y modificar elementos
  4. Iterar arrays
  5. Funciones útiles (con ejemplos)
  6. Ordenar arrays
  7. Arrays multidimensionales
  8. Arrays asociativos con ejemplos prácticos
  9. Operaciones comunes: merge, slice, splice, chunk
  10. Referencias y copy-on-write
  11. Convertir arrays: JSON, strings y objetos
  12. Rendimiento y memoría (tips)
  13. Herramientas y estructuras alternativas
  14. Errores comunes y cómo evitarlos
  15. Ejercicios prácticos
  16. Resumen y buenas prácticas

¿Qué es un array?

Un array es una estructura de datos que almacena múltiples valores en una sola variable. En PHP, los arrays son heterogéneos (pueden contener diferentes tipos) y dinámicos (puedes añadir o quitar elementos en tiempo de ejecución).

PHP implementa arrays con asociative arrays internamente — es decir, cada elemento tiene una clave (key) que puede ser un entero o una cadena, y un valor (value).


Cómo crear arrays

Sintaxis moderna (short array syntax)

<?php
$frutas = ["Manzana", "Banana", "Naranja"];

Sintaxis antigua (array())

<?php
$frutas = array("Manzana", "Banana", "Naranja");

Arrays asociativos (claves personalizadas)

<?php
$persona = [
    "nombre" => "Andrés",
    "edad" => 30,
    "ciudad" => "Lima"
];

Arrays vacíos y añadir elementos

Acceder y modificar elementos

Acceder por índice / clave

<?php
echo $frutas[0];           // Manzana
echo $persona["nombre"];   // Andrés

Modificar

<?php
$frutas[1] = "Pera";       // reemplaza Banana por Pera
$persona["edad"] = 31;

Añadir con llave específica

<?php
$datos["telefono"] = "987654321";

Eliminar elementos

<?php
unset($frutas[2]);         // elimina Naranja (la clave 2)

Nota: unset() elimina la clave. Si trabajas con índices numéricos, la reindexación no ocurre automáticamente (usa array_values() si quieres reindexar).


Iterar arrays

foreach (recomendado)

<?php
foreach ($frutas as $index => $valor) {
    echo "$index => $valor
";
}

foreach por referencia (modificar valores)

<?php
foreach ($frutas as &$valor) {
    $valor = strtoupper($valor);
}
unset($valor); // muy importante: eliminar la referencia al final

Si olvidas unset($valor) tras usar la referencia, la variable seguirá referenciando el último elemento y puede causar bugs.

for con count

<?php
for ($i=0, $n = count($frutas); $i < $n; $i++) {
    echo $frutas[$i];
}

while con each (no recomendado)

each() fue deprecated y eliminada en versiones recientes — usa foreach o ArrayIterator.


Funciones útiles (con ejemplos)

Nota: hay muchas funciones; aquí están las más usadas y prácticas.

Información y tamaño

  • count($arr) o sizeof($arr) — número de elementos.
<?php
echo count($frutas); // 3

Añadir / quitar

  • array_push($arr, $val) — añade al final (devuelve nuevo tamaño).
  • array_pop($arr) — elimina y devuelve el último elemento.
  • array_unshift($arr, $val) — añade al inicio.
  • array_shift($arr) — elimina y devuelve el primer elemento.
<?php
array_push($frutas, "Kiwi");
$ultimo = array_pop($frutas);

Buscar / comprobar

  • in_array($needle, $haystack) — busca valor.
  • array_search($needle, $haystack) — devuelve clave o false.
  • array_key_exists($key, $arr) — comprueba si existe la clave.
  • isset($arr[$key]) — similar pero false si la clave existe y es null.
<?php
if (in_array("Pera", $frutas)) { echo "existe"; }
$key = array_search("Pera", $frutas); // 1

Transformación y filtrado

  • array_map($callback, $arr) — aplica una función a cada elemento y devuelve nuevo array.
  • array_filter($arr, $callback) — devuelve elementos que cumplan la condición.
  • array_reduce($arr, $callback, $initial) — reduce en un único valor.
  • array_walk($arr, $callback) — aplica función a cada elemento (no devuelve nuevo array, actúa en sitio o por referencia).
<?php
$mayus = array_map('strtoupper', $frutas);
$pares = array_filter([1,2,3,4,5], fn($v) => $v % 2 === 0);
$sum = array_reduce([1,2,3,4], fn($carry,$v) => $carry + $v, 0);

Claves y valores

  • array_keys($arr) — devuelve array de claves.
  • array_values($arr) — devuelve array de valores.
  • array_key_first($arr) / array_key_last($arr) — (PHP 7.3+) obtienen la primera/ultima clave.

Combinación y unión

  • array_merge($a, $b) — une arrays; reindexa claves numéricas.
  • array_merge_recursive($a, $b) — combina recursivamente.
  • $union = $a + $b — unión por claves (preserva claves del primer array).
  • array_combine($keys, $values) — crea array combinando claves y valores (ambos arrays deben tener mismo tamaño).
<?php
$a = [0 => "cero", 1 => "uno"];
$b = [0 => "A", 2 => "dos"];
print_r(array_merge($a, $b)); // reindexa
print_r($a + $b); // conserva claves del $a

Reindexar

  • array_values($arr) — devuelve array con índices numéricos reindexados desde 0.

Extra

  • array_slice, array_splice, array_chunk, array_rand, shuffle, array_unique, array_sum, array_product, array_count_values, array_column, array_flip.
<?php
$parte = array_slice($frutas, 1, 2); // obtiene subarray
array_splice($frutas, 1, 1, ["Pera", "Melón"]); // reemplaza
$chunks = array_chunk($frutas, 2);

Ordenar arrays

Importante: algunas funciones preservan las claves y otras no.

  • sort($arr) — ordena valores, reindexa claves.
  • rsort($arr) — orden descendente.
  • asort($arr) — ordena manteniendo relación clave=>valor (preserva claves).
  • arsort($arr) — como asort en orden descendente.
  • ksort($arr) — ordena por claves (ascendente).
  • krsort($arr) — por claves (descendente).
  • usort($arr, $callback) — ordena usando función de comparación (no preserva claves).
  • uasort($arr, $callback) — orden por valores con callback y preserva claves.

Ejemplo — ordenar asociativo por valores manteniendo claves:

<?php
$productos = ["a" => 10, "b" => 5, "c" => 8];
asort($productos); // b=>5, c=>8, a=>10 (claves preservadas)

Ejemplo — usort para objetos

<?php
$usuarios = [
    ["name" => "Ana", "edad" => 30],
    ["name" => "Luis", "edad" => 25],
];
usort($usuarios, fn($a,$b) => $a['edad'] <=> $b['edad']); // ordena por edad

Arrays multidimensionales

Un array puede contener arrays (matrices / tablas).

<?php
$matriz = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
];

echo $matriz[1][2]; // 6

Ejemplo con claves

<?php
$usuarios = [
    ["id"=>1, "name"=>"Ana"],
    ["id"=>2, "name"=>"Luis"],
];
echo $usuarios[0]['name']; // Ana

Recorrer con foreach anidado

<?php
foreach ($matriz as $fila) {
    foreach ($fila as $valor) {
        echo $valor;
    }
}

array_column — extraer columna

<?php
$names = array_column($usuarios, 'name'); // ["Ana", "Luis"]

Arrays asociativos — ejemplos prácticos

Representar una entidad (DTO simple)

<?php
$producto = [
    "id" => 10,
    "nombre" => "Camiseta",
    "precio" => 29.90
];

Guardar usuarios por id (acceso rápido)

<?php
$usersById = [
    101 => ["name"=>"Ana"],
    102 => ["name"=>"Luis"]
];

echo $usersById[101]['name']; // Ana

Actualizar en sitio

<?php
$usersById[101]['email'] = "ana@example.com";

Operaciones comunes: merge, slice, splice, chunk

  • array_merge($a, $b) — combine arrays.
  • array_slice($arr, $offset, $length) — copia parcial sin modificar original.
  • array_splice(&$arr, $offset, $length, $replacement) — modifica el array original.
  • array_chunk($arr, $size) — divide en bloques.
<?php
$a = [1,2,3,4,5];
$b = array_slice($a, 1, 3); // [2,3,4]
array_splice($a, 1, 2); // $a ahora [1,4,5]

Referencias y copy-on-write

En PHP, la asignación de arrays usa copy-on-write: asignar un array a otra variable no duplica memoria hasta que uno de los dos se modifica.

<?php
$a = [1,2,3];
$b = $a;      // no copia inmediatamente (copy-on-write)
$b[0] = 99;   // ahora PHP hace la copia y modifica $b

Referencias explícitas

<?php
$a = [1,2,3];
$b = &$a;     // $b referencia a $a
$b[0] = 99;
echo $a[0];   // 99

Usa referencias con cuidado: pueden causar código difícil de mantener.


Convertir arrays: JSON, strings y objetos

JSON

<?php
$json = json_encode($producto);
$array = json_decode($json, true); // true devuelve array asociativo

Implode / Explode (strings)

<?php
$csv = implode(",", $frutas); // "Manzana,Pera, ..."
$parts = explode(",", $csv);

Serializar

<?php
$s = serialize($producto);
$orig = unserialize($s);

Array <-> Object

<?php
$std = (object) $producto;        // array a objeto stdClass
$arr = (array) $std;              // objeto a array

Rendimiento y memoría (tips)

  • PHP usa copy-on-write: asignar arrays es barato hasta que los modificas.
  • Para colecciones muy grandes, considera usar generators (yield) para procesar elemento a elemento sin cargar todo en memoria.
  • SplFixedArray puede usar menos memoria si el tamaño es fijo, pero su uso es menos común y la API es distinta.
  • Evita foreach con count() en la condición sin almacenarla en variable si el array puede cambiar en cada iteración. Mejor hacer $n = count($arr) antes.

Ejemplo de generator

<?php
function iterarLineas($file) {
    $f = fopen($file, 'r');
    while (($line = fgets($f)) !== false) {
        yield $line;
    }
    fclose($f);
}

foreach (iterarLineas('archivo.txt') as $line) {
    // procesa línea sin cargar todo el archivo
}

Herramientas y estructuras alternativas

  • ArrayObject y ArrayIterator — objetos que envuelven arrays y permiten métodos de iteración y manipulación.
  • SplFixedArray — array de tamaño fijo (menor consumo de memoria en algunos casos).
  • Generators (yield) — recorrer grandes conjuntos sin memorizarlos.

Errores comunes y cómo evitarlos

  1. Olvidar unset($var) después de foreach(&$v) — produce referencias indeseadas.
  2. Usar array_merge creyendo que preservará claves numéricasarray_merge reindexa claves numéricas.
  3. Modificar un array mientras se itera sobre él — puede producir comportamiento impredecible.
  4. Confundir isset() y array_key_exists()isset() devuelve false si la clave existe y su valor es null.
  5. Olvidar validar datos al usar array_combine() — ambos arrays deben tener el mismo tamaño.

Ejercicios prácticos (con pistas)

  1. Invertir array: escribir función que reciba array y devuelva mismo array invertido sin usar array_reverse().

    • Pista: recorre desde el final al inicio.
  2. Contar palabras: dada una cadena, contar cuántas veces aparece cada palabra (uso de explode() y array_count_values()).

  3. Agrupar por propiedad: dado array de usuarios con ['id','name','city'], agruparlos por city (resultado: ['Lima' => [user1,user2], 'Cusco'=>[...]]).

  4. Merge sin perder claves: combinar dos arrays asociativos sin que las claves del primer array se sobrescriban (usa el operador +).

  5. Filtrar duplicados por campo: dada lista de arrays (usuarios) eliminar duplicados por email conservando el primero.


Utilidades de depuración

  • var_dump($arr) — muestra estructura con tipos.
  • print_r($arr) — formato legible.
  • var_export($arr, true) — devuelve código PHP que representa el array.
  • Usa Xdebug para inspección avanzada.

Resumen y buenas prácticas

  • Usa arrays para almacenar colecciones; elige indexado o asociativo según el caso.
  • Prefiere foreach para iterar por claridad.
  • Valida datos antes de usar funciones que requieren tamaños/formatos (ej. array_combine).
  • Para grandes volúmenes, considera yield o estructuras más eficientes.
  • Conoce las reglas de reindexado y preservación de claves al usar funciones como array_merge, sort, asort.
  • Evita referencias innecesarias; cuando las uses, libera la referencia con unset().

Referencias rápidas (funciones más usadas)

  • count(), in_array(), array_search(), array_key_exists(), isset(), array_keys(), array_values(), array_map(), array_filter(), array_reduce(), array_push(), array_pop(), array_shift(), array_unshift(), array_merge(), array_slice(), array_splice(), array_chunk(), array_column(), array_unique(), array_sum(), array_reverse().

¿Quieres que guarde este contenido en un archivo .md para descargarlo? Puedo:

  • Guardarlo como arrays-en-php-completo.md y darte el enlace de descarga, o
  • Convertirlo a HTML listo para tu CMS (con meta tags).

Artículos relacionados

Inicios en PHP: Todo lo que debes saber sobre variables y sus tipos

Tutoriales > php

Inicios en PHP: Todo lo que debes saber sobre variables y sus tipos

Aprende los fundamentos de PHP desde cero. Descubre qué son las variables, cómo se declaran, sus tipos principales y ejemplos prácticos para comenzar a programar en PHP.

Leer más
Clases y Objetos en PHP: Guía completa de POO con ejemplos

Tutoriales > php

Clases y Objetos en PHP: Guía completa de POO con ejemplos

Aprende Clases y Objetos en PHP (POO): sintaxis, propiedades, métodos, visibilidad, herencia, interfaces, traits, magic methods y ejemplos prácticos. Ideal para PHP 7/8+

Leer más
Cómo trabajar con variables en PHP: concatenación, operaciones y ejemplos prácticos

Tutoriales > php

Cómo trabajar con variables en PHP: concatenación, operaciones y ejemplos prácticos

Aprende a usar variables en PHP con ejemplos claros. Descubre cómo declararlas, concatenar cadenas de texto, realizar operaciones matemáticas y aplicar operadores en tus proyectos de programación web.

Leer más
Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Tutoriales > php

Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Aprende todo sobre los bucles en PHP. Descubre cómo funcionan while, do while, for y foreach con ejemplos claros, además de cómo usar break y continue.

Leer más
Arrays en PHP: Guía Completa con Ejemplos

Tutoriales > php

Arrays en PHP: Guía Completa con Ejemplos

Aprende todo sobre los arrays en PHP: qué son, cómo se crean, tipos de arrays, funciones útiles y ejemplos prácticos para programadores principiantes.

Leer más
Cómo configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20 paso a paso

Tutoriales > php

Cómo configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20 paso a paso

Aprende a configurar CodeIgniter 4 con Nginx en un VPS Ubuntu 20. Guía completa para instalar, optimizar y desplegar tu aplicación web de forma segura y eficiente.

Leer más
El experimento secreto donde intentaron borrar la memoria humana

Internacional > Conspiración

El experimento secreto donde intentaron borrar la memoria humana

Durante décadas, el gobierno de Estados Unidos realizó experimentos secretos para borrar recuerdos, controlar mentes y manipular la conciencia humana. Esta es la historia real del Proyecto MK-Ultra.

Leer más
Los descubrimientos astronómicos más importantes de 2025

Astronomía > Universo

Los descubrimientos astronómicos más importantes de 2025

Explora los hallazgos astronómicos más destacados de 2025: el nuevo satélite de Urano, un cometa interestelar, fenómenos alrededor de agujeros negros, el exoplaneta TWA 7 b, y la superestructura cósmica “Quipu”. Conoce cómo estas revelaciones transforman nuestra comprensión del universo.

Leer más
Análisis de Marketing: Medir el Éxito

Economía > Emprendimiento Digital

Análisis de Marketing: Medir el Éxito

Descubre las mejores herramientas de análisis para medir el éxito de tu estrategia de marketing y maximiza tus resultados. Aprende a recopilar datos y tomar decisiones informadas.

Leer más
Miguel Grau: El Caballero de los Mares

Historia > Perú vs Chile

Miguel Grau: El Caballero de los Mares

Descubre la vida y legado de Miguel Grau, héroe naval peruano que dejó una marca indeleble en la historia del Perú. Infancia, carrera naval y liderazgo.

Leer más
Leo en la amistad: cómo es realmente este signo cuando es tu amigo

Astrología > Leo

Leo en la amistad: cómo es realmente este signo cuando es tu amigo

Descubre cómo es Leo en la amistad: lealtad, generosidad, liderazgo, puntos fuertes y débiles, y cómo llevarte mejor con este signo del zodiaco.

Leer más
Leo en el amor: cómo ama este signo y qué necesita en una relación

Astrología > Leo

Leo en el amor: cómo ama este signo y qué necesita en una relación

Descubre cómo es Leo en el amor, sus fortalezas, debilidades emocionales, compatibilidades y claves para conquistar a este signo apasionado del zodiaco.

Leer más
La Inteligencia Artificial que Crea Videos con Solo Escribir Texto: Así Funciona en 2025

Tecnología > Inteligencia Artificial

La Inteligencia Artificial que Crea Videos con Solo Escribir Texto: Así Funciona en 2025

En 2025, la inteligencia artificial es capaz de crear videos realistas a partir de simples descripciones de texto. Te contamos cómo funciona, qué herramientas existen y cómo podría cambiar la forma en la que consumimos contenido en internet.

Leer más
Tecnología y bienestar

Economía > Emprendimiento Digital

Tecnología y bienestar

Descubre cómo la tecnología puede mejorar tu calidad de vida y bienestar. Aprende a aprovechar las herramientas tecnológicas para una vida más saludable y feliz.

Leer más
Nicolás Maduro Moros: de conductor de autobús y músico aficionado a presidente de Venezuela

Biografías > Presidentes

Nicolás Maduro Moros: de conductor de autobús y músico aficionado a presidente de Venezuela

Biografía detallada de Nicolás Maduro Moros: su infancia en El Valle, su etapa como conductor de autobús, su afición por la música, su formación política en Cuba y su ascenso al poder tras Hugo Chávez.

Leer más
El Inicio de la Guerra del Pacífico

Historia > Perú vs Chile

El Inicio de la Guerra del Pacífico

Descubre las causas y consecuencias de la Guerra del Pacífico, un conflicto que involucró a Chile, Perú y Bolivia. Conoce la historia detrás de este enfrentamiento.

Leer más
¿Qué es X11? Significados en informática, criptomonedas y tecnología

Tecnología > Innovación

¿Qué es X11? Significados en informática, criptomonedas y tecnología

X11 puede referirse al sistema de ventanas en Linux, a un algoritmo de minería en criptomonedas como Dash o a modelos tecnológicos. Aquí te explicamos cada uso en detalle.

Leer más
eSports en 2025: el futuro de los deportes electrónicos y su crecimiento global

esports > Tendencias ESports

eSports en 2025: el futuro de los deportes electrónicos y su crecimiento global

Descubre cómo evolucionan los eSports en 2025: crecimiento de la audiencia, nuevas tecnologías como la realidad virtual y el cloud gaming, inversión de grandes marcas y el impacto cultural que convierte a los deportes electrónicos en una de las industrias más influyentes del mundo.

Leer más
La llamada desde una casa vacía: el caso real que desconcertó a la policía

Terror > Historias Reales

La llamada desde una casa vacía: el caso real que desconcertó a la policía

Una llamada de emergencia proveniente de una casa abandonada dejó perplejos a los agentes. Sin línea activa, sin electricidad y sin habitantes… ¿quién estaba llamando? Un caso real que aún genera escalofríos.

Leer más
La Campaña de Tarapacá: Desembarco Chileno

Historia > Perú vs Chile

La Campaña de Tarapacá: Desembarco Chileno

Descubre la Campaña de Tarapacá, un punto clave en la Guerra del Pacífico. Conoce los objetivos militares, movimientos de tropas y situación de los aliados en este conflicto histórico.

Leer más
Batalla del Alto de la Alianza

Historia > Perú vs Chile

Batalla del Alto de la Alianza

La Batalla del Alto de la Alianza fue un enfrentamiento clave en la Guerra del Pacífico. Descubre las fuerzas participantes, el desarrollo del combate y las consecuencias para Perú y Bolivia.

Leer más
Tecnología para facilitar la vida diaria

Economía > Emprendimiento Digital

Tecnología para facilitar la vida diaria

Descubre cómo la tecnología puede hacer que tu vida diaria sea más fácil y eficiente. Desde aplicaciones hasta dispositivos inteligentes, todo para simplificar tu rutina.

Leer más
Guerra del Pacífico: La Campaña Marítima

Historia > Perú vs Chile

Guerra del Pacífico: La Campaña Marítima

Descubre la importancia estratégica del control marítimo en la Guerra del Pacífico. Conoce los principales buques y objetivos navales de cada país. ¡Entérate del desarrollo inicial de las operaciones!

Leer más
El algoritmo de YouTube explicado: cómo aumentar tus vistas

Tecnología > Redes Sociales

El algoritmo de YouTube explicado: cómo aumentar tus vistas

Descubre cómo funciona el algoritmo de YouTube y aprende estrategias efectivas para aumentar tus vistas, retención y suscriptores en 2025.

Leer más
Aries en la amistad: cómo son los amigos de este signo de fuego

Astrología > Aries

Aries en la amistad: cómo son los amigos de este signo de fuego

Descubre cómo es Aries en la amistad: características, fortalezas, debilidades y compatibilidad con otros signos como amigo.

Leer más
Cómo es Tauro en el amor: compatibilidad, personalidad y estilo afectivo

Astrología > Tauro

Cómo es Tauro en el amor: compatibilidad, personalidad y estilo afectivo

Descubre cómo es Tauro en el amor: su personalidad romántica, compatibilidad con otros signos, fortalezas y desafíos en las relaciones.

Leer más
5 destinos económicos en Perú para viajar este fin de año 2025 (Experiencias increíbles con bajo presupuesto)

Viajes y Turismo > Destinos y Experiencias

5 destinos económicos en Perú para viajar este fin de año 2025 (Experiencias increíbles con bajo presupuesto)

Descubre los 5 mejores destinos económicos para viajar en Perú este fin de año 2025. Guía completa con precios estimados, actividades recomendadas, opciones low cost y calificación para viajes solo, en pareja o con amigos. Perfecto para mochileros y viajeros de bajo presupuesto.

Leer más
10 Errores Financieros que Debes Evitar para Alcanzar la Estabilidad

Economía > Finanzas Personales

10 Errores Financieros que Debes Evitar para Alcanzar la Estabilidad

Descubre los 10 errores financieros más comunes que pueden poner en riesgo tu estabilidad económica y aprende cómo evitarlos con estrategias prácticas de educación financiera.

Leer más
Biografía de Glogloking (Marx Loayza): de las profundidades de la mina al éxito en el streaming

Entretenimiento Digital > Streamers Peruanos

Biografía de Glogloking (Marx Loayza): de las profundidades de la mina al éxito en el streaming

Conoce la historia real de Marx Loayza, más conocido como Glogloking. De sus orígenes humildes en Arequipa a convertirse en uno de los streamers peruanos más populares.

Leer más
Cómo Crear un Negocio Online con Poca Inversión

Economía > Emprendimiento Digital

Cómo Crear un Negocio Online con Poca Inversión

Descubre cómo crear un negocio online rentable con poca inversión. Aprende estrategias, herramientas y modelos de negocio digital que puedes comenzar hoy mismo para generar ingresos desde internet.

Leer más
Clases y Objetos en PHP: Guía completa de POO con ejemplos

Tutoriales > php

Clases y Objetos en PHP: Guía completa de POO con ejemplos

Aprende Clases y Objetos en PHP (POO): sintaxis, propiedades, métodos, visibilidad, herencia, interfaces, traits, magic methods y ejemplos prácticos. Ideal para PHP 7/8+

Leer más
Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Tutoriales > php

Bucles en PHP: while, do while, for, foreach y ejemplos prácticos

Aprende todo sobre los bucles en PHP. Descubre cómo funcionan while, do while, for y foreach con ejemplos claros, además de cómo usar break y continue.

Leer más
Jack el Destripador: revelada su verdadera identidad tras 137 años

Terror > Crímenes

Jack el Destripador: revelada su verdadera identidad tras 137 años

Un nuevo análisis de ADN identifica a Aaron Kosminski como Jack el Destripador, el asesino que aterrorizó Londres en 1888. Descubre la verdad detrás del misterio.

Leer más