@sawa4

Как переобразовать word в xml формат через php?

необходимо содержимое word документа, содержащего текст, рисунки занести в таблицы mysql. Предполагаемая струкрута файла

вопрос текст картинка текст
ответ A)текст
B) текст
C) текст
D) текст
E) текст
правильный ответ B
Для этого я хочу переконвертировать в xml и в ручную импортировать в MySQL
<database name="DB_NAME">
<!-- Таблица questions -->
<table name="questions">
	<column name="question_id">1</column>
	<column name="question">question 1</column>
	<column name="answer_a">answer_a 1</column>
	<column name="answer_b">answer_b 2</column>
	<column name="answer_c">answer_c 3</column>
	<column name="answer_d">answer_d 4</column>
	<column name="answer_e">answer_e 5</column>
	<column name="right_answer">right_answer 1</column>
</table>

или если можно автоматизировать, то сразу с worda в mysql
  • Вопрос задан
  • 220 просмотров
Пригласить эксперта
Ответы на вопрос 1
По идее документ формата docx уже является xml документом, только сжатым алгоритмом zip. Всё что вам потребуется, это:

$zip = new ZipArchive;
$doc_file = './publisher.docx';
$zip->open($doc_file);
$zip->extractTo('./tmp');


После чего глянуть на содержимое и воспользоваться функцией simplexml_load_file:

$xml = simplexml_load_file("./tmp/path_to.xml");
$xml->registerXPathNamespace('w',"http://schemas.openxmlformats.org/wordprocessingml/2006/main");
$text = $xml->xpath('//w:t');
echo '<pre>'; print_r($text); echo '</pre>';


Stackoverflow
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы