File size: 2.27Kb
<?PHP
class scanReader {
private $triggerList = [
'дсп', 'қбпү', 'секретно', 'құпия'
];
/*
Чтение документа WORD
*/
public function Word($filename) {
$zip = zip_open($filename);
if(!$zip || is_numeric($zip)) {
return false;
}
while($zip_entry = zip_read($zip)) {
if(zip_entry_open($zip, $zip_entry) == FALSE) {
continue;
}
if(zip_entry_name($zip_entry) != "word/document.xml") {
continue;
}
$content = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
foreach($this->triggerList as $triggerItem) {
if(stripos($content, $triggerItem) !== false) {
zip_close($zip);
return $triggerItem;
}
}
zip_entry_close($zip_entry);
}
zip_close($zip);
return false;
}
/*
Чтение документа EXCEL
*/
public function Excel($filename) {
$zip = zip_open($filename);
if(!$zip || is_numeric($zip)) {
return false;
}
while($zip_entry = zip_read($zip)) {
if(zip_entry_open($zip, $zip_entry) == FALSE) {
continue;
}
if(zip_entry_name($zip_entry) != "xl/sharedStrings.xml") {
continue;
}
$content = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
foreach($this->triggerList as $triggerItem) {
if(stripos($content, $triggerItem) !== false) {
zip_close($zip);
return $triggerItem;
}
}
zip_entry_close($zip_entry);
}
zip_close($zip);
return false;
}
/*
Чтение документа PDF
*/
public function Pdf($filename) {
$content = shell_exec("pdftotext " . escapeshellarg($filename) . " -");
foreach($this->triggerList as $triggerItem) {
if(stripos($content, $triggerItem) !== false) {
return $triggerItem;
}
}
return false;
}
/*
Чтение текстового документа
*/
public function Txt($filename) {
$content = file_get_contents($filename);
foreach($this->triggerList as $triggerItem) {
if(stripos($content, $triggerItem) !== false) {
return $triggerItem;
}
}
return false;
}
}