Foros del Web » Programando para Internet » PHP »

como limpiar un array

Estas en el tema de como limpiar un array en el foro de PHP en Foros del Web. Hola, que tal? Este es mi codigo: Código PHP: <?php      $consulta = "consulta" ;       $consulta =  mysql_query ( $consulta , $con1 );       $i ...
  #1 (permalink)  
Antiguo 27/09/2011, 16:34
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
como limpiar un array

Hola, que tal?

Este es mi codigo:

Código PHP:
<?php 
    $consulta
="consulta"
    
$consultamysql_query($consulta,$con1); 
    
$i=1
    while(
$rt=mysql_fetch_array($consulta)){ 
        
$clientes[$i]="<a href='clientes.php?id=".$rt['usuario_id']."'>".$rt['nombre']." ".$rt['apellido']."</a>"
        
$i=$i+1
    } 
    
$contar_clientes=count($clientes); 
    if(
$contar_clientes==0){ 
        
$notificacion=""
    }elseif(
$contar_clientes==1){ 
        
$notificacion=$clientes[1]." ha comentado en la foto <a href='foto.php?id=".$foto_id."' >".$titulo."</a>."
    }elseif(
$contar_clientes==2){ 
        
$notificacion=$clientes[1]." y ".$clientes[2]." han comentado en la foto <a href='foto.php?id=".$foto_id."'>".$titulo."</a>."
    }elseif(
$contar_clientes>=3){ 
        for(
$j=1;$j=($contar_clientes-2);$j++){ 
            
$notificacion=$notificacion.$clientes[$j].", "
        } 
        
$notificacion=$notificacion.$clientes[$contar_clientes-1]." y ".$clientes[$contar_clientes]." han comentado en la foto <a href='foto.php?id=".$foto_id."'>".$titulo."</a>."
    } 
    
$update_notificacion="UPDATE notificaciones SET notificacion='$notificacion' where notificacion_id='$notificacion_id'"
    if (!
mysql_query($update_notificacion,$con1)) 
      { 
      die(
'Error: ' mysql_error()); 
      } 
?>
Necesito hacer para que despues del update del final del codigo se limpie por completo, o se borre el array clientes, ya que todo ese codigo esta dentro de un WHILE y a veces el array usa datos que fueron guardados en la primera pasada. Necesito que al final quede como si no existiese.

Como hago eso posible?

Gracias!
  #2 (permalink)  
Antiguo 27/09/2011, 16:45
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: como limpiar un array

Utililiza unset

Código PHP:
Ver original
  1. unset($clientes);

Así se destruye la variable completa.

Si no quieres borrar la variable asignale algo:

Código PHP:
Ver original
  1. $clientes = '';

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 27/09/2011, 16:53
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: como limpiar un array

Solo por curiosidad, despues de mostrar (o guardar) la informacion del array... tu script finaliza o realiza mas procesos? y, en caso de realizar mas procesos, esa variable interfiere de alguna forma?

Si el script finaliza, no es necesario "deshacerte" de la variable, PHP liberara la memoria y recursos utilizados por tu script.

Si el script continua y "borras" la variable, simplemente no tendras acceso a ella, pero no necesariamente implica que se optimicen los recursos.

Sea cual sea el caso, si la variable interfiere con otros procesos, te incomoda o te estorba, puedes recurrir a la opcion sugerida por andresdzphp.
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 27/09/2011, 17:28
Avatar de morfasto  
Fecha de Ingreso: julio-2011
Ubicación: Lima
Mensajes: 291
Antigüedad: 12 años, 9 meses
Puntos: 8
Respuesta: como limpiar un array

No, el script continua e interfiere, por eso necesito desaserme de la variable. El unset() me sirve perfecto para lo que necesito.

Gracias por la ayuda!

Etiquetas: limpiar, mysql, usuarios
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 22:11.