PHP 使用php显示标准img src中目录的随机图像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 使用php显示标准img src中目录的随机图像相关的知识,希望对你有一定的参考价值。

<?php

// set the $folder to the folder containing the images
// You then use <img src="/path/to/this/script.php" alt="image randomiser" />
// to display them

  $folder = 'banners';

  $extList = array();
	$extList['gif'] = 'image/gif';
	$extList['jpg'] = 'image/jpeg';
	$extList['jpeg'] = 'image/jpeg';
	$extList['png'] = 'image/png';
	

  $img = null;

  if (substr($folder,-1) != '/') {
  	$folder = $folder.'/';
  }

  if (isset($_GET['img'])) {
  	$imageInfo = pathinfo($_GET['img']);
  	if (
  	    isset( $extList[ strtolower( $imageInfo['extension'] ) ] ) &&
          file_exists( $folder.$imageInfo['basename'] )
      ) {
		$img = $folder.$imageInfo['basename'];
	}
  } else {
  	$fileList = array();
  	$handle = opendir($folder);
  	while ( false !== ( $file = readdir($handle) ) ) {
  		$file_info = pathinfo($file);
  		if (
  		    isset( $extList[ strtolower( $file_info['extension'] ) ] )
  		) {
  			$fileList[] = $file;
  		}
  	}
  	closedir($handle);

  	if (count($fileList) > 0) {
  		$imageNumber = time() % count($fileList);
  		$img = $folder.$fileList[$imageNumber];
  	}
  }
  
  if ($img!=null) {
  	$imageInfo = pathinfo($img);
  	$contentType = 'Content-type: '.$extList[ $imageInfo['extension'] ];
  	header ($contentType);
  	readfile($img);
  } else {
  	if ( function_exists('imagecreate') ) {
  		header ("Content-type: image/png");
  		$im = @imagecreate (100, 100)
  		    or die ("Cannot initialize new GD image stream");
  		$background_color = imagecolorallocate ($im, 255, 255, 255);
  		$text_color = imagecolorallocate ($im, 0,0,0);
  		imagestring ($im, 2, 5, 5,  "IMAGE ERROR", $text_color);
  		imagepng ($im);
  		imagedestroy($im);
  	}
  }
  
  
  
?>

以上是关于PHP 使用php显示标准img src中目录的随机图像的主要内容,如果未能解决你的问题,请参考以下文章

HTML中img标签的src填本地绝对路径无法显示

<img src=...> 在 WordPress header.php 和 index.php 中不显示本地图像

正则表达式和 PHP - 从 img 标签中隔离 src 属性

正则表达式在 php 中捕获 <img> src [重复]

PHP 从IMG标签中获取SRC

PHP - 替换 <img> 标签并返回 src