我的随机文件php脚本不能正常工作

时间:2016-08-28 16:04:17

标签: php

所以我有这个PHP脚本,它会随机显示来自某个目录的文件,而对我来说它不起作用:/即使我将html文件上传到目录,这个页面只显示空白,这里&#39 ; s我使用的脚本:

<?php
  error_reporting(E_ALL);


  function is_image($string){
    return ((file_exists($string))&&(preg_match('#(\.jpg|\.jpeg|\.gif|\.png|\.bmp)$#i',$string)))  ? true : false ;
  }

  function is_text($string){
    return ((file_exists($string))&&(preg_match('#(\.txt|\.php|\.html)$#i',$string)))  ? true : false ;
  }

  define('OUTPUT_TYPE','html');
  define('RANDOM_FILES_FOLDER','randomstuff/');

  $my_array = Array();
  $my_dir = RANDOM_FILES_FOLDER ;

  if ($dir = @opendir("$my_dir")) {

    while (($file = readdir($dir)) !== false) {
      if ($file != "." && $file != ".."  && !is_dir($my_dir.$file))
      {
        switch(OUTPUT_TYPE):

          case'image':
            if(is_image($my_dir.$file)){
              $my_array[] = $file;
            }
          break;

          case'text':
            if(is_text($my_dir.$file)){
              $my_array[] = $file;
            }
          break;

          default:
          break;

        endswitch;

      }
    }
    closedir($dir);
  }


  if(count($my_array)>0){

    $random_number = rand(0, count($my_array)-1);
    $random_file = $my_array[$random_number];

    switch(OUTPUT_TYPE):

      case'image':   
        echo "<img src=\"".$my_dir.$random_file."\" border=\"0\" alt=\"\">";
      break;

      case'text':  
        include($my_dir.$random_file);
      break;

      default:
      break;

    endswitch;

  }
?>

您的帮助将不胜感激

编辑:我的.htaccess文件导致问题,但我不知道如何修复它:(这里是我的.htaccess文件:

# Do not remove this line or mod_rewrite rules and search engine friendly URLs will stop working
RewriteBase /

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC]

1 个答案:

答案 0 :(得分:0)

应该先做switch(OUTPUT_TYPE): ???

检查文件类型