Вообщем написал простенький парсер docx на phpWord, который более-менее работает как ожидалось.
Подключаю документ:
$source = __DIR__."/res/text1.docx";
$phpWordRead = IOFactory::load($source);
Дальше уже получаю секции и работаю уже ними и тем, что внутри них:
$sections = $phpWordRead->getSections();
Поскольку мой вордовский документ по сути таблица, то результат работы парсера, это многомерный массив, внутри которого указан номер ячейки и ее текстовое содержимое (Element\TextRun), разбитое на строки(Element\Text). Такого вида:
array [
0=>[
0=>"Владелец автомобиля",
1=>"(ФИО И АДРЕС)"
]
]
Проблема в том, что если Word находит в документе ошибки, то каждое слово, в котором находит ошибку, оборачивает в отдельный Element\Text.
Если вручную зайти в текстовый документ, отключить проверку орфографии и выйти, сохранив изменения, то в итоге получается красивый массив, как тот пример которого я привел выше. Т.е ключ указывает на номер строки в ячейке. Количество срок соответствует количеству Element\Text. Но если проверка орфографии в документе включена, тот количество Element\Text уже не соответствует количеству строк в ячейке.
Можно ли как-то не вручную, а средствами phpWord отключить проверку орфографии, что бы сохранялось правильное деление на строки?