Hola, lo que hace tu código es abrir un archivo y sacar su contenido a una variable ( $total), pero luego abres nuevamente el archivo solo para escribir el mismo valor, si se trata de un contador lo lógico sería que aumentaras en uno el valor de total, antes de escribir nuevamente el archivo.
Otra cosa que no entiendo es eso de:
$total[1] = 100
$total[2] = > 100
Según entendi lo que tu quieres hacer sería algo como esto:
Código PHP:
$archivo="contador.txt"; //Ruta al archivo
//En lugar de sacar el contenido a una variable, yo lo sacaría
//a un array, ya que el contenido siempre estara en la primer
//línea del archivo y te ahorras el abrir y cerrar el archivo
$total=file($archivo);
//Ahora escribimos el archivo aunmentando
//en uno el valor de $total[0] que es la primera línea del archivo
$total=$total[0]+1;
$abrirarchivo=fopen($archivo,"w");
$savenuevo = fwrite($abrirarchivo, $total);
fclose($abrirarchivo); //cerramos
//Ahora la definicion de las variables
$destino="[email protected]";
$asunto="Contador web";
$mensaje = "La pagina web ha recibido ".$total." visitas";
$num_visitas=100; //Número de visitas, para que envie el aviso.
//Ahora evaluamos si hay las suficientes visitas
//para enviar el aviso
if($total==$num_visitas)
{
mail($destino,$asunto,$mensaje);
}
//Fin
Espero que sea eso, lo que querías..
Saludos.