一个可以定制的图形计数器
   这一个可定制的用PHP4编的计数器,这个计数器可以显示六位数字,可在tml文件中用<image scr="counter.php3">引用,定制的方法为制作十个拥有自己风格的GIF文件,分别为0,1,2,3,4,5,6,7,8,9,0的画面,放在counter.php3的同一个目录下.原程序如下
<? Header("Content-type:image/gif");
 function 
display($file){
    
$fp=fopen($file,"rw");
    
$num=fgets($fp,6);
    
$num=$num+1;
    
exec("echo "$num">$file");
    
fclose($fp);

    
$n=6-strlen($num);
    
$out=imagecreate(96,20);
    
$im=imagecreatefromgif("0.gif");

    for(
$i=0;$i<$n;$i++)
    
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
                    
    for(
$j=0;$j<strlen($num);$j++)
    switch(
substr($num,$j,1)){
      case 
"1":$im=imagecreatefromgif("1.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"2":$im=imagecreatefromgif("2.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"3":$im=imagecreatefromgif("3.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"4":$im=imagecreatefromgif("4.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"5":$im=imagecreatefromgif("5.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"6":$im=imagecreatefromgif("6.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"7":$im=imagecreatefromgif("7.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"8":$im=imagecreatefromgif("8.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"9":$im=imagecreatefromgif("9.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
      case 
"0":$im=imagecreatefromgif("0.gif");
               
imagecopyresized($out,$im,$i*16,0,0,0,16,20,16,20);
               
$i++;
               
ImageDestroy($im);
               break;
        }
  
imageGif($out);
  
ImageDestroy($out);
   }  
   
$file="/tmp/counter";
   if(!
file_exists($file))
   
exec("echo "0">$file");

   
display($file);
?>