PHP (03) Funciones (05) Variables estaticas

El problema que tienen las funciones es que siempre se les hace una llamada las variables se reinicializán a sus valores por defecto a menos que estan seas globales, pero puede interesarnos guardar el valor de algunas variables y que estas no sean globales. De este modo aparecen las variables estáticas, que son aquellas que mantienen el valor que van adquiriendo a lo largo de la ejecución del programa.
Para este fin se utiliza la palabra static, y como veremos a continuación es realmente sencillo de utilizar:

<?php
 echo '<p>El valor actual de la variable $contar es: ' . contar() . '</p>';
 echo '<p>El valor actual de la variable $contar es: ' . contar() . '</p>';
 echo '<p>El valor actual de la variable $contar es: ' . contar() . '</p>';
 echo '<p>El valor actual de la variable $contar es: ' . contar() . '</p>';

 function contar()
 {
  static $contar;
  $contar++;
  return $contar;
 }
?>

Cuyo resultado es:
El valor actual de la variable $contar es: 1
El valor actual de la variable $contar es: 2
El valor actual de la variable $contar es: 3
El valor actual de la variable $contar es: 4

De esta manera se pueden controlar por ejemplo en numero de ventas, de peticiones a un servidor, o cualquier cosa que nos pueda ser útil, sin necesidad de variables globales.