2010-11-11 30 views
13

Czy znasz jakiś sposób generowania plików doc i docx z PHP i bez składnika COM? Wypróbowałem PHPWord, który tworzy pliki docx, ale nie można ich otworzyć w OpenOffice, ponieważ powodują one awarię. Próbowałem też PHPDocx, ale nie generował on żadnych plików.Generowanie dokumentów tekstowych za pomocą PHP

+0

* (powiązana) * [Utwórz dokument Word przy użyciu PHP w systemie Linux] (http://stackoverflow.com/questions/124959/create-word-document-using-php-in-linux) – Gordon

+2

Nie należy również podawać na PHPDocx. Wygląda na przyzwoitą paczkę. –

+1

Nie poddawaj się PHPWord albo ... jest w to dużo pracy. Nie wszystkie wersje OO mogą czytać pliki docx, czy jesteś pewny, że to robi? –

Odpowiedz

9

Zobacz tutaj:

http://www.webcheatsheet.com/php/create_word_excel_csv_files_with_php.php

Cytując z artykułu Najpopularniejszą metodą:

Korzystanie Nagłówki HTTP

W tej metodzie trzeba formatować HTML/PHP strona za pomocą Przyjazny dla programu CSS i dodaj informacje o nagłówku do skryptu PHP. Utwórz , aby upewnić się, że nie używasz zewnętrznych arkuszy stylów, ponieważ wszystko powinno znajdować się w tym samym pliku o numerze .

W rezultacie użytkownik zostanie poproszony o pobranie pliku. Ten plik będzie nie być w 100% "oryginalnym" dokumentem Word, ale z pewnością otworzy się w aplikacji MS Word. Tej metody można używać zarówno w środowiskach Unix, jak i Windows .

<?php 
    header("Content-type: application/vnd.ms-word"); 
    header("Content-Disposition: attachment;Filename=document_name.doc");  
    echo "<html>"; 
    echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">"; 
    echo "<body>"; 
    echo "<b>My first document</b>"; 
    echo "</body>"; 
    echo "</html>"; 
?> 
+8

To jest śmieci. Nie kopiuj i wklej tego dalej. Wysyłanie fałszywych nagłówków HTTP razem z niektórymi wyjściami HTML ** nie ** powoduje, że jest to dokument Word. Być może oszukało to przeglądarki do przekazania go do programu Word, który niejawnie go konwertuje. Nowsze wersje podniosą co najmniej ostrzeżenie. Każda zapora ogniowa klasy biznesowej prawdopodobnie zablokuje tak proste obejścia. – mario

+0

@mario - pamiętaj, że ma około czterech lat, a także część odpowiedzi na zduplikowany link, który zaznaczyłeś. Zgadzam się z niektórymi z twoich streszczeń, jednak zauważ, że "śmieci" to prawdopodobnie hiperbola. – SW4

+0

Przepraszamy za mocne sformułowanie, przy okazji. Ale ta właśnie próbka kodu zasilała źle poinformowane pytania dla początkujących. Po prostu zamknął temat i zamiast tego sprecyzował go w głównym duplikacie. – mario

5

OpenTBS może generować dokumentów DOCX czystego PHP, stosując technikę szablonów.

Proste.

Powiązane problemy