zoukankan      html  css  js  c++  java
  • clearbom.php

    <?php
    $basedir = str_replace('/clearBOM.php','',str_replace('\','/',dirname(__FILE__)));
    $auto = 1;
    checkdir($basedir);
    function checkdir($basedir){
    if ($dh = opendir($basedir)) {
    while (($file = readdir($dh)) !== false) {
    if ($file != '.' && $file != '..'){
    if (!is_dir($basedir.'/'.$file)) {
    $filename = $basedir.'/'.$file;
    echo 'filename:'.$basedir.'/'.$file.checkBOM($filename).'<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);
    }
    ?>

  • 相关阅读:
    梦断代码读后感02
    UML大战需求与分析--阅读笔记4
    UML大战需求分析--阅读笔记3
    软件需求与分析课堂讨论一
    UML大战需求分析--阅读笔记02
    UML大战需求分析--阅读笔记01
    学习进度--大三下
    问题账户需求分析
    2016年秋季阅读计划
    个人总结
  • 原文地址:https://www.cnblogs.com/thinkbig/p/5777209.html
Copyright © 2011-2022 走看看