2011-11-01 13 views
5

Tengo un ciclo que se ejecuta 47 veces en mi página. Durante el transcurso de cada ciclo, los mensajes de error se ingresan en err [] y se imprimen. Estoy tratando de poner en blanco la matriz después de cada iteración y me estoy metiendo en problemas.unset array completo

Puede haber 4 o 5 mensajes de error por iteración, a veces ninguno. ¿Hay una manera más fácil de restablecer toda la matriz después de cada iteración más allá de ejecutar otro ciclo foreach y deshacer cada valor? ¿Una forma de borrar todos los contenidos y restablecer los índices sin eliminar realmente la matriz en sí?

+1

Cuál es el problema con sobrescribir la matriz actual con un nuevo vacío ¿formación? ¿Mantiene referencias a la matriz? –

Respuesta

9

Usted debe utilizar: unset ($err);

+0

Hmm ... eso funcionó. Debo haber tenido algo más equivocado cuando lo intenté previamente y no funcionó. Parece estar haciendo el truco ahora. ¡Gracias! –

+0

No hay problema. Si lo desea, puede aceptar esto como la respuesta para que otros puedan encontrarlo más fácil. Es posible que tu problema haya incluido las llaves. Eso a veces me atrapa. –

+2

Pero eso no está vaciando la matriz, está eliminando completamente la matriz ... –

7

Configúrelo en array(), y debería estar bien.

+0

Eso es exactamente lo que estaba buscando. – Imtiaz

2
$clear = array(); 
foreach($your_array_variable as $key=>$val){ 
    $val = ''; 
    $clear [$key] = $val; 
} 
print_r($clear); 

El código siguiente es para desarmar misma matriz,

foreach($your_array_variable as $key=>$val){ 
    $val = ''; 
    $your_array_variable[$key] = $val; 
} 
print_r($your_array_variable); 

Tanto del código anterior le ayudará a simplemente desarmar solo y ganó los valores No borres las llaves. Entonces las claves serán como están, pero los valores se borrarán.

Dónde está la salida será como a continuación,

array(
[0]=> 
[1]=> 
) 

si utiliza $your_array_variable = array(); entonces usted va a obtener el resultado a continuación,

Array(
) 
Cuestiones relacionadas