Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
Cómo eliminar la última matriz del código siguiente cuando el nombre está vacío

Aquí quiero eliminar la última matriz de abajo (esta es siempre la última matriz que se establece dinámicamente):

 array(1) { ["file-1573204001988"]=> array(3) { [0]=> array(5) { ["name"]=> string(7) "abc.png" ["type"]=> string(9) "image/png" ["tmp_name"]=> string(14) "/tmp/phpdl81UY" ["error"]=> int(0) ["size"]=> int(72761) } [1]=> array(5) { ["name"]=> string(12) "profiles.png" ["type"]=> string(9) "image/png" ["tmp_name"]=> string(14) "/tmp/phptIFS1J" ["error"]=> int(0) ["size"]=> int(16178) } [2]=> array(5) { ["name"]=> string(0) "" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(4) ["size"]=> int(0) } } }

Quiero eliminar toda la matriz debajo de arriba (cuando tiene un nombre vacío):

 [2]=> array(5) { ["name"]=> string(0) "" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(4) ["size"]=> int(0) }

¿Cómo es esto posible? Lo intenté con array_pop, unset y otras funciones php predefinidas, pero no obtuve el resultado correcto. Por favor, ayúdenme a alcanzar el valor correcto. Gracias de antemano.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Si está intentando eliminar persistentemente el último elemento dentro de la matriz, puede usar array_pop .

array_pop() aparece y devuelve el valor del último elemento de la matriz, acortando la matriz en un elemento.

 $myArray = array( 0 => "hello", 1 => "world", 2 => "remove me", ); array_pop($myArray); // Removes [2] from the array above.

En tu caso, simplemente harías:

 array_pop($array["file-1573204001988"]);
over 4 years ago · Santiago Trujillo Denunciar

0

Un bucle foreach simple con una prueba simple hará esto por usted

 foreach ($arr['file-1573204001988'] as $key=>$a){ if ( $a['name'] = '' ){ unset($arr['file-1573204001988'][$key]); } }
over 4 years ago · Santiago Trujillo Denunciar

0

Estos parecen elementos de la matriz $_FILES . En lugar de verificar el nombre, recomendaría verificar el valor del error y filtrar cualquier cosa que no UPLOAD_ERR_OK o 0

 $valid_files = array_filter($arr["file-1573204001988"], fn($item) => $item['error'] === UPLOAD_ERR_OK);

Errores de carga de archivos

matriz_filtro

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda