Banner程序

  <?php

  /* banner.php

  这个PHP3的滚动程序是由 Anton Olsen ( [email protected] )设计的,你可以自由地修改和使用这个程序,并自由地传播它,如果你对它有了比较重要的修改,请你给作都写份E-Mail。

  在这个程序中,作者试图通过多种不同的方法来实现这个功能,但PHP中的图像函数不能显示动画的GIF图片格式及对这种格式的操作(如:fopen, fpassthru, 和 fclose)。作者通过了passthru方法来加以实现,虽然这并不是一种最好的方法,但它可以比别的方法更加快速地显示广告条。

  在这个程序中,我们假设:

  1、你已经有了一个存放所有的广告图片的目录。

  2、所有的广告图片都是GIF格式的。

  3、所有的GIF图片都是以banner开头的。

  3、在这个目录中没有其它的除了广告图片的文件。

  安装这个程序:

  1、把这个程序和所有的广告图片(*.GIF)放到一个目录中。

  2、把以下这段HTML代码放在你的WEB页面中:

  <a href="wherever.you.want.com">

  <img src="http://www.yourserver.com/bannerdir/banner.phtml" alt="Random Banner Here" border=0>

  </a>

  4/14/2000    Mouse Chen( [email protected]   )    Translate it to Chinese

  */

  /* random( $max integer )

  返回一个从 0到 $max-1的随机数;

  */

  function random( $max )

  {

  $x = rand();

  $y = getrandmax();

  $r = $x / $y * ($max -1 );

  $r = round( $r++ );

  return $r;

  }

  /*读取目录,把所有的 “banner*”的文件读到一个数组中;*/

  $i = 0;

  $d   = dir( ".");

  while($entry=$d->read())

  if (substr($entry,0,6) ==  "banner")

  $array[$i++] = $entry;

  $d->close();

  /* 选取一个随机数 */

  $r = random( $i );

  /* 发送一个 no-cache 和 gif 类型的文件头,并且输出图片。*/

  Header(  "Pragma: no-cache" );

  Header(  "Expires: Monday 01-Jan-80 12:00:00 GMT" );

  Header(  "Content-type:  image/gif");

  passthru(  "cat $array[$r]" );

  ?>