У меня есть страница, где я предоставляю предварительный просмотр документа word (docx) с помощью docx_reader. Я использую некоторые ключевые слова, чтобы определить, где остановить предварительный просмотр, т. Е. Какой объем полного документа представить. Затем я отображаю этот предварительный просмотр в элементе «div». Тем не менее, поскольку docx по сути также является разметкой, я иногда останавливаю предварительный просмотр (прекращение чтения из файла docx), чтобы он оставлял меня с одним или несколькими несопоставленными открытыми элементами div, которые я, конечно, не закрываю в основном HTML-коде.
Теперь вопрос: есть ли способ закрыть определенный элемент div?
например:
<div id="embedding_div">
{$docx_preview}
</div id="embedding_div">
В качестве альтернативы, если это невозможно, как еще можно представить предварительный просмотр, чтобы он не мешал окружающему коду? Может быть, что-то вроде iframe? Или есть способ закрыть все несопоставленные открытые div-ы из $ docx_preview (например, используя substr_count, чтобы найти количество открывающих и закрывающих div-ов в $ docx_preview, а затем добавить недостающее количество закрывающих div-ов) перед тем, как я закрою embedding_div.
например:
$nopen_divs=substr_count ($docx_preview, '<div>');
$nclose_divs=substr_count ($docx_preview, '</div>');
$nmissing_closedivs = $nopen_divs - $nclose_divs;
echo '<div id="embedding_div">';
echo $docx_preview;
for ($i=0;$i<$nmissing_closedivs;$i++){
echo '</div>';
}
echo '</div>'; // this closes the embedding_div
Заранее спасибо.
Кстати, иногда он также врезается в середину элемента, такого как "span"». Как я могу предотвратить это? Таким образом, конец $ docx_preview будет выглядеть примерно так:
<span style="color: red
без заключительных кавычек или ">"