2016-02-02 9 views
1

В PHP Я должен удалить метаданные автора из файла DOCX. Прежде всего, я разархивирую документ и после того, как отредактировал метаданные автора, установив его пустым, используя библиотеку чтения XML.PHP как удалить метаданные автора из docx

$file = 'document.docx'; 
$filename = 'path/'.$file; 

// Unzip the docx 
$unzipped = md5($filename); 

if (file_exists($unzipped)) { 
    rmdir($unzipped); 
    mkdir($unzipped); 
} 

$zip = new ZipArchive; 
$res = $zip->open($filename); 
if ($res === true) { 
    extractFolder($zip, "word/media", $unzipped); 
    $zip->extractTo($unzipped); 
    $zip->close(); 
} else { 
    die("The docx file appears to be corrupt (i.e. it can't be opened using Zip).\n"); 
} 

Проблема возникает, когда я пытался заново закрепить документ. Фактически, когда re-zip сделан, файл docx, кажется, поврежден, когда я открываю его в Word.

create_docx($unzipped,'_zips/'.$file); 

Как изменить метаданные автора (установка анонимного документа) и сохранить правильный файл docx?

+0

'rrmdir'? конечно, это должно быть «rmdir»! – RamRaider

+0

да, извините, это моя ошибка, спасибо! Однако я не думаю, что это основная проблема – apanzett

ответ

0

Я не знаю php, но я предполагаю, что проблема заключается в том, что вам нужно сжать внутри папки $ unzipped, а не в самой папке. Таким образом, рекурсивный «$ unzipped/*» как источник вместо «$ unzipped».

 Смежные вопросы

  • Нет связанных вопросов^_^