Foros del Web » Programando para Internet » PHP »

Condicionar un array para limitar sus valores??

Estas en el tema de Condicionar un array para limitar sus valores?? en el foro de PHP en Foros del Web. Hola, estoy necesitando algo que pueda hacer lo siguiente: Supongamos: $ARRAY = array("1","223","3","433","545","6","237","8"); Necesito algo que trabajando con ese array, elimine los valores mayores a ...
  #1 (permalink)  
Antiguo 09/03/2010, 18:06
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 14 años, 8 meses
Puntos: 6
Condicionar un array para limitar sus valores??

Hola, estoy necesitando algo que pueda hacer lo siguiente:

Supongamos: $ARRAY = array("1","223","3","433","545","6","237","8");

Necesito algo que trabajando con ese array, elimine los valores mayores a 8...
Osea, que me devuelva un array sin los valores que no cumplan la condicion de ser menores o igual a 8...

Existe algo?

Gracias!
__________________
Abre tu mente: Index no signigica index, significa índice
  #2 (permalink)  
Antiguo 09/03/2010, 18:12
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Condicionar un array para limitar sus valores??

puedes recorrer el array con un for y e ir preguntando si su valor es menor igual a 8 e ir guardandolo en un nuevo array.
  #3 (permalink)  
Antiguo 09/03/2010, 18:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Condicionar un array para limitar sus valores??

así mismo puedes crear la función que te filtre dichos valores y usar array_filter()
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 09/03/2010, 18:25
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Condicionar un array para limitar sus valores??

checa esto
Código PHP:
Ver original
  1. function eliminar($valor){
  2.     if($valor < 9){
  3.         return $valor;
  4.     }
  5. }
  6. $array1 = array("1","223","3","433","545","6","237","8");
  7. print_r(array_filter($array1, "eliminar"));
es lo que dice pateketrueke
saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 09/03/2010, 18:34
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 14 años, 8 meses
Puntos: 6
Respuesta: Condicionar un array para limitar sus valores??

No entiendo donde se aplica la funcion...

a y una pregunta, cuando abró un directorio de archivos, como hago para meter los nombres de los archivos en un array? porque haciendo array($file); no me funciona...

Gracias
__________________
Abre tu mente: Index no signigica index, significa índice
  #6 (permalink)  
Antiguo 09/03/2010, 18:39
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Condicionar un array para limitar sus valores??

el nombre de la función se pasa como parametro al array_filter
Código PHP:
Ver original
  1. print_r(array_filter($array1, "eliminar"));//se pasa como segundo parametro
la segunda pregunta no lo entendí, disculpa.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #7 (permalink)  
Antiguo 09/03/2010, 18:44
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 14 años, 8 meses
Puntos: 6
Respuesta: Condicionar un array para limitar sus valores??

viste que cuando abris un directorio, se hace un while para mostrar los archivos que hay dentro de la carpeta, yo quería saber si se podían cargar los nombres de los archivos en un array para trabajarlso con un foreach.


Y como trabaja la funcion si ahi solo dice "eliminar"? no lo comprendí...
__________________
Abre tu mente: Index no signigica index, significa índice
  #8 (permalink)  
Antiguo 09/03/2010, 18:59
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Condicionar un array para limitar sus valores??

Fíjate que en el código que escribió eits, antes del array_filter, define una función eliminar().

Cuando hace esto :

Código PHP:
Ver original
  1. 1.
  2.       array_filter($array1, "eliminar");

El segundo parámetro ( "eliminar" ) hace un callback, es decir, llama a una función previamente definida llamada eliminar.

Funciona como array_map o array_walk, la cual aplica la función a cada elemento del array.

Utiliza php.net cuando no entiendas alguna función.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #9 (permalink)  
Antiguo 09/03/2010, 19:00
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Condicionar un array para limitar sus valores??

1.-mientras haces el while mete los nombres al array
Código PHP:
Ver original
  1. $nombre=array();
  2. while(){//tu while para recorrer tus archivos
  3.     $nombre[]=$tuVariableQueTengaElnombre;
  4. }

2.- copia y pega el codigo en una hoja y lo ejecutas, verás que te devuelve lo que necesitas, el array_filter hace el resto.

saludos.

yuju por fin llegue al mensaje 1000 jajaja
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #10 (permalink)  
Antiguo 09/03/2010, 19:07
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 14 años, 8 meses
Puntos: 6
Respuesta: Condicionar un array para limitar sus valores??

Cita:
Iniciado por eits Ver Mensaje
1.-mientras haces el while mete los nombres al array
Código PHP:
Ver original
  1. $nombre=array();
  2. while(){//tu while para recorrer tus archivos
  3.     $nombre[]=$tuVariableQueTengaElnombre;
  4. }

2.- copia y pega el codigo en una hoja y lo ejecutas, verás que te devuelve lo que necesitas, el array_filter hace el resto.

saludos.

yuju por fin llegue al mensaje 1000 jajaja
Ese trozo de codigo me tira error...
Estoy desesperado con este tema y no tengo tiempo de comprenderlo!

Felicidades!

PD: el código inicial funcionó para lo de los número pero realmente lo necesito para excluir unos archivos de un directorio, pero estos deben estar en un array...

osea ponele: en carpeta/empresas
estan los archivos pan-sa.php queso-llc.php helado-sa.php

necesito generar un array con esos nombres y excluir del mismo a las empresas que son -sa, osea la condicion se tomaría generando un explode con - y si la parte 1 es -sa devolver el valor y luego hacer el array_filter pero no puedo convertir el directorio generado en un array.
__________________
Abre tu mente: Index no signigica index, significa índice
  #11 (permalink)  
Antiguo 09/03/2010, 19:09
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Condicionar un array para limitar sus valores??

creo que no fui claro y ofrezco una disculpa, al código que me refería que copies y pegues es a este
Código PHP:
Ver original
  1. function eliminar($valor){
  2.     if($valor < 9){
  3.         return $valor;
  4.     }
  5. }
  6. $array1 = array("1","223","3","433","545","6","237","8");
  7. print_r(array_filter($array1, "eliminar"));
el otro es una idea de como podrías meter los nombres al array.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #12 (permalink)  
Antiguo 09/03/2010, 19:27
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 14 años, 8 meses
Puntos: 6
Respuesta: Condicionar un array para limitar sus valores??

EDITO: Sos de lo mejor eits! ahora que me relajé me puse a ver bien el código del array y ya me salió!

Muchas gracias! ahí te a karma.
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 09/03/2010 a las 19:51

Etiquetas: limitar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:57.