За последние 24 часа нас посетил 21541 программист и 1026 роботов. Сейчас ищут 699 программистов ...

Конвертация docx документа в HTML

Тема в разделе "PHP для новичков", создана пользователем RikSagara, 17 дек 2017.

  1. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    Привет, ребята не поможете новичку, нашел готовый скрипт конвертации но почему то не работает.
    function readDocs($filePath) {
    // Создать новый ZIP-архив
    $zip = new ZipArchive;
    $dataFile = 'word/document.xml';
    // Открыть полученный архивный файл
    if (true === $zip->open($filePath)) {
    // Если сделано, выполните поиск файла данных в архиве
    if (($index = $zip->locateName($dataFile)) !== false) {
    // Если он найден, прочитайте его в строке
    $data = $zip->getFromIndex($index);
    // Закрыть архивный файл
    $zip->close();
    // Загрузка XML из строки
    // Пропустить ошибки и предупреждения
    $xml = DOMDocument::loadXML($data, LIBXML_NOENT | LIMBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
    // Возвращать данные без тегов форматирования XML

    $contents = explode('\n',strip_tags($xml->saveXML()));
    $text = '';
    foreach($contents as $i=>$content) {
    $text .= $contents[$i];
    }
    return $text;
    }
    $zip->close();
    }


    ругается на if (true === $zip->open($filePath)) {
    загрузил обычным способом $docx = readDocs("test.html");

    Может мне кто нибудь подсказать?
     
  2. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    С ошибками разобрался но почему то нечего не выводит
     
  3. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    <?php
    readDocs ("123.docx");
    echo "$text";
    ?> я же правильно к функции обращаюсь??
     
  4. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    Ругается почему то на $zip = new ZipArchive; версия 5.5
     
  5. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    в таком виде грузит только текст без тэгов, архив не создает.
    <?php
    $filePath = 'testdoc.docx';
    $zip = new ZipArchive;
    $dataFile = 'word/document.xml';
    // Открыть полученный архивный файл
    if (true === $zip->open($filePath)) {
    // Если сделано, выполните поиск файла данных в архиве
    if (($index = $zip->locateName($dataFile)) !== false) {
    // Если он найден, прочитайте его в строке
    $data = $zip->getFromIndex($index);
    // Закрыть архивный файл
    $zip->close();
    // Загрузка XML из строки
    // Пропустить ошибки и предупреждения
    $xml = DOMDocument::loadXML($data, LIBXML_NOENT | LIMBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
    // Возвращать данные без тегов форматирования XML
    $contents = explode('\n',strip_tags($xml->saveXML()));
    $text = '';
    foreach($contents as $i=>$content) {
    $text .= $contents[$i];
    }
    echo "$text";
    return $text;
    }
    $zip->close();
    }
    // В случае отказа возвращать
    return "Документ не загружен";
    ?>

    можно как то исправить?
     
  6. RikSagara

    RikSagara Новичок

    С нами с:
    17 дек 2017
    Сообщения:
    6
    Симпатии:
    0
    У меня в общем цель какая - выводить в блок docx файл, думал конвертировать в html и фраймом выводить. Но я что то в тупик пришел...