Foros del Web » Programando para Internet » PHP »

Se busca funcion

Estas en el tema de Se busca funcion en el foro de PHP en Foros del Web. Tengo itemDoc[0] itemDoc[1] itemDoc[2] itemDoc[3] itemDoc[4] itemDoc[5] Hay una funcion para traer el ultimo subindice de itemDoc osea el 5, sin tener ke hacer un ...
  #1 (permalink)  
Antiguo 27/10/2003, 13:12
 
Fecha de Ingreso: abril-2002
Mensajes: 36
Antigüedad: 15 años, 8 meses
Puntos: 0
Se busca funcion

Tengo

itemDoc[0]
itemDoc[1]
itemDoc[2]
itemDoc[3]
itemDoc[4]
itemDoc[5]

Hay una funcion para traer el ultimo subindice de itemDoc osea el 5, sin tener ke hacer un for o while.

Es para saber no mas.
  #2 (permalink)  
Antiguo 27/10/2003, 13:25
Avatar de Sexma  
Fecha de Ingreso: junio-2003
Ubicación: Valencia
Mensajes: 109
Antigüedad: 14 años, 6 meses
Puntos: 0
No se si sera lo que estas preguntando pero buscando un poco, funcion count()

Código PHP:
$a[0] = 1
$a[1] = 3
$a[2] = 5
$result count ($a); 
// $result == 3 

$b[0] = 7
$b[5] = 9
$b[10] = 11
$result count ($b); 
// $result == 3; 
__________________
CLUB ESPORTIU UNIVERSITAT DE VALENCIA

Visita la pagina de la UV-O



  #3 (permalink)  
Antiguo 27/10/2003, 13:52
 
Fecha de Ingreso: abril-2002
Mensajes: 36
Antigüedad: 15 años, 8 meses
Puntos: 0
ese es el problema, tengo ke validadar ke el subindice no este ocupado
Suponiendo ke borro
itemDoc[0]
itemDoc[3]

count (itemDoc) ahora vale 4, por lo tanto eso me dice ke el siguiente ke tengo ke ocupar es el 5, pero este ya esta ocupado.

Pero ya no importa, creo ke hacer un for es la mejor solucion.
gracias
  #4 (permalink)  
Antiguo 27/10/2003, 14:05
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
¿? count() debería decirte ahí que tienes dos elementos en ese array ...

Código PHP:
$total=count($itemDoc); 
Para asegurarte .. puedes hacer un:

Código PHP:
print_r($itemDoc); 
y ver como queda tu array ..

Yo suelo usar count() y unset() para eliminar elementos del array sin problemas ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 27/10/2003, 14:27
 
Fecha de Ingreso: abril-2002
Mensajes: 36
Antigüedad: 15 años, 8 meses
Puntos: 0
?
De 6 borro 2, quedan 4

Claro con unset los borro, bueno el usuario. La idea era validar los subindice y ocupar uno libre, no sobreescribirlo.


Esto hago (La solucion por lo demas)
foreach($itemDoc as $k => $v){
$ultmo_valor_sub = $k;
}

$itemDoc[$ultmo_valor_sub+1]="Nuevo doc. ";


Yo pregunto :

$ultmo_valor_sub = funcion_ke_me_trae_el_ultimo_indice(itemDoc);

$itemDoc[$ultmo_valor_sub+1]="Nuevo doc. ";
  #6 (permalink)  
Antiguo 27/10/2003, 14:27
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Cluster, creo que se refiere a quitar los elementos 0 y 3 del array de ejemplo del primer mensaje.

Si tu problema no es sacar el indice, sino qu elo que quieres es insertar en el siguiente indice numerico, lo puedes hacer con:
Código PHP:
$itemDoc[]="nuevo elemento"
Automagicamente te cogera el siguiente indice.

Y si necesitas el ultimo indice, haciendo un:
Código PHP:
$indices=array_keys($itemDoc);
$indice=array_pop($indices); 
Tendras en $indice el ultimo indice. Y en $indices todos los indices menos el ultimo. No se si esto es mas rapido que el bucle.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 27/10/2003, 15:03
 
Fecha de Ingreso: abril-2002
Mensajes: 36
Antigüedad: 15 años, 8 meses
Puntos: 0
Ok, gracias.
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 13:09.