2015-12-24 3 views
0

Я использую PHPWord для замены текста в текстовых документах с PHP с помощью setValue, и он отлично работает. Но PHPWord не заменяет заполнители внутри URL-адреса связанного текста. Есть ли способ сделать это?Замена заполнителей в ссылке в документе Word с использованием PHPWord

Я проделал большой поиск, чтобы найти решение этой проблемы, но не получил. Если кто-то знает, как это сделать с каким-то другим пакетом (вместо PHPWord), я тоже готов перейти на этот пакет.

Добавлено после получения двух голосов для закрытия этой темы: Пожалуйста, не голосуйте, чтобы закрыть это, если вы не знаете, о чем я говорю. Здесь задается конкретный вопрос о PHPWord, который пользователи PHPWord поймут четко. Я также не прошу других узнать для меня новый пакет. Могут быть пользователи, которые застряли в этом ограничении PHPWord и обнаружили альтернативный пакет, который преодолевает это ограничение, которое я не смог найти после googling.

ответ

1

Я в конечном итоге создать собственное решение, чтобы открыть файл .zip в PHP с помощью ZipArchive класса и делать поиск заменить в:

document.xml - Содержание документов находятся в этом файле footerX.xml, headerX .xml - X - это число от 1 до N. Поэтому, если в вашем документе имеется только один заголовок с 5 или 10 или 100 страницами, содержимое заголовка будет в header1.xml; если у вас есть 2 заголовка в вашем документе, вы будете иметь эти 2 заголовка в header1.xml и header2.xml и так далее.

rels/document.xml.rels - Ссылки в документе хранятся inline в файле document.xml или хранятся в этом файле document.xml.rels.

rels/footerX.xml.rels, rels/headerX.xml.rels - Ссылки в верхних и нижних колонтитулах хранятся либо в строках в этих файлах.

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