zoukankan      html  css  js  c++  java
  • Thinkphp 去除bom头 解决模版空输出问题

    <?php
    if (isset($_GET['dir'])){ //config the basedir
      $basedir=$_GET['dir'];
    }else{
      $basedir = '.';
    }
    $auto = 1;
    checkdir($basedir);
    function checkdir($basedir){
      if ($dh = opendir($basedir)) {
        while (($file = readdir($dh)) !== false) {
          if ($file != '.' && $file != '..'){
            if (!is_dir($basedir."/".$file)) {
              echo "filename: $basedir/
    $file ".checkBOM("$basedir/$file")." <br>";
            }else{
              $dirname = $basedir."/".
    $file;
              checkdir($dirname);
            }
          }
        }
      closedir($dh);
      }
    }
    function checkBOM ($filename) {
      global $auto;
      $contents = file_get_contents($filename);
      $charset[1] = substr($contents, 0, 1);
      $charset[2] = substr($contents, 1, 1);
      $charset[3] = substr($contents, 2, 1);
      if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
        if ($auto == 1) {
          $rest = substr($contents, 3);
          rewrite ($filename, $rest);
          return ("<font color=red>BOM found,automatically removed.</font>");
        } else {
          return ("<font color=red>BOM found.</font>");
        }
      }
      else return ("BOM Not Found.");
    }
    function rewrite ($filename, $data) {
      $filenum = fopen($filename, "w");
      flock($filenum, LOCK_EX);
      fwrite($filenum, $data);
      fclose($filenum);
    }
    ?>
    

      

  • 相关阅读:
    Swift中函数
    Swift 中的开关语句switch在swift中的使用
    Swift 函数新特性
    Swift 学习-多线程
    安卓学习
    ios -网络
    ios 中block
    Lua 简易调试
    iOS、Cocos2dx、Unity3D下的坐标系统简介
    Lua开发过程中遇到的一些小问题
  • 原文地址:https://www.cnblogs.com/glory-jzx/p/3579802.html
Copyright © 2011-2022 走看看