Normalmente las variables declaradas dentro de una función nacen (se inicializan) cuando la función es llamada, y se borran (mueren) cuando se sale de la función. Observa el siguiente ejemplo:
Cada vez que llamamos a esta función (típico contador) se asigna a $a el valor 0 y se vuelca a pantalla "0". La sentencia $a++, que a continuación incrementa la variable, no serviría de nada, ya que en cuanto la función termina la variable $a desaparece, y si volvemos a llamar la función, $a se inicializa de nuevo con valor "0".
Para hacer una función útil para contar, la variable $a debe declararse como estática. Una variable estática existe sólo en el ámbito local de la función, pero no pierde su valor cuando la ejecución del programa abandona este ámbito:
Ahora, cada vez que llamamos a la función Contador(), se volcará en pantalla el valor de $a y se incrementará, conservando este último valor para la próxima vez que sea llamada, es decir, sin inicializar la variable cada vez. Por supuesto que las variables estáticas solo conservan su valor actualizado durante la lectura de la página. Si salimos de la página y volvemos a entrar, partimos del valor inicial.
Usuarios que han visto este tema también han visto...
- Como alternar los colores de las filas de una tabla con PHP
- Medir el tiempo de ejecución de tus script
- Ejecutar comandos shell mediante PHP
- Ampliar funciones en templates de DotClear en PHP
- Htaccess y páginas dinámicas en PHP
Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2011 Factoría de Internet S.L.. Todos los derechos reservados.