Home  >  Article  >  Backend Development  >  php bom removal tool, php batch removal of bom code_PHP tutorial

php bom removal tool, php batch removal of bom code_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:31:28894browse

PHP has the function of removing file BOM codes in batches, and supports batch removal of folders. The specific php file code is as follows:

<?php
header('content-Type: text/html; charset=utf-8');
$auto=1;/*设置为1标示检测BOM并去除,设置为0标示只进行BOM检测,不去除*/
$basedir='.';
$loop=true;//www.phpernote.com
echo '当前查找的目录为:'.$basedir.'当前的设置是:';
echo '(1)',$loop?'检查当前目录以及当前目录的子目录':'只针对当前目录进行检测';
echo '(2)',$auto?'检测文件BOM同时去除检测到BOM文件的BOM<br />':'只检测文件BOM不执行去除BOM操作<br />';

checkdir($basedir,$loop);
function checkdir($basedir='',$loop=true){
	$basedir=empty($basedir)?'.':$basedir;
	if($dh=opendir($basedir)){
		while (($file=readdir($dh))!==false){
			if($file!='.'&&$file!='..'){
				if(!is_dir($basedir.'/'.$file)){
					echo '文件: '.$basedir.'/'.$file .checkBOM($basedir.'/'.$file).' <br>';
				}else{
					if(!$loop) continue;
					$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并已自动去除</font>');
		}else{
			return (' <font color=red>找到BOM</font>');
		}
	}else{
		return (' 没有找到BOM');
	}
}
function rewrite($filename,$data){
	$filenum=fopen($filename,'w');
	flock($filenum,LOCK_EX);
	fwrite($filenum,$data);
	fclose($filenum);
}

Save the above code as a file with the suffix php and put it in the file directory where the bom needs to be removed, and then run the php file. The files in the directory and all subdirectories of the directory will be checked for bom and the bom will be removed. , the running result page is as follows:

php bom去除工具,php批量去除bom的代码

Articles you may be interested in

  • PHP implements restriction of domain names to protect source code from being copied
  • PHP adds anti-quote in front of the quotation marks The reason for slashes and how to remove backslashes in PHP, three ways to turn off php magic quotes
  • Use the PHP function memory_get_usage to get the current PHP memory consumption to optimize the performance of the program
  • How about php Clear the html format and remove the spaces in the text and then intercept the text
  • 40 PHP code optimization items that PHP programmers must know
  • General PHP filter function code to prevent injection vulnerability attacks
  • php implements batch compression, packaging and downloading of files
  • php error_log() writes error information to a file

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/764082.htmlTechArticlePHP has the function of removing file BOM codes in batches and supports batch removal of folders. The specific php file code is as follows: ?phpheader('content-Type: text/html; charset=utf-8');$auto=1;/*Set to 1 to indicate...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn