PHP实现office中宏的提取

WBOY
풀어 주다: 2016-06-23 13:58:59
원래의
957명이 탐색했습니다.

其实是通过调用外部工具实现,外部工具为 OfficeMalScanner

php代码如下:

<?php $path = "e:\\php\\malware.xls"; 	//待判断文件位置$type = "bin"; 						//bin为常见二进制格式,xml为xml格式$officescanner = "e:\\officemalscanner\\officemalscanner.exe"; //officemalscanner.exe 所在路径if($type == "bin") {	exec("$officescanner $path info");		//常见二进制格式文件}else {	exec("$officescanner $path scan brute");//xml格式的文件}$dir = "$path-macros";if(!file_exists($dir)||!is_dir($dir)){		echo "the file don not include macro!";	}else {	$dirList=array();	$dir=opendir($dir);	$i=0;	while($file=readdir($dir)){		if($file!=='.'&&$file!=='..'){			$dirList[$i]=$file;			$i++;		};	};	$num = $i;	closedir($dir);	for($i=0;$i<$num;$i++) {		//echo $dirList[$i];		if(preg_match('/^((?!Sheet).)*$/',$dirList[$i]) && preg_match("/^((?!ThisDocument).)*$/",$dirList[$i])) {			//排除其他文件			$text = "$path-macros\\$dirList[$i]";			$result = file_get_contents($text, "r");			echo $result; //宏内容		}	}}?>
로그인 후 복사


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿