<?php if (isset ($_get[' dir '))) {//Set file directory $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._<a href=http://www.joyphper.net>http:// Www.joyphper.net</a></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); }?>
PHP bulk removal of BOM code in PHP files