2010-11-11 58 views
13

Bạn có biết cách nào để tạo các tệp docdocx bằng PHP và không có thành phần COM không? Tôi đã thử PHPWord, tạo tệp docx, nhưng không thể mở chúng ở OpenOffice vì chúng gây ra sự cố. Tôi cũng đã thử PHPDocx, nhưng nó không tạo ra bất kỳ tập tin nào cả.Tạo tài liệu từ bằng PHP

+0

* (liên quan) * [Tạo tài liệu Word sử dụng PHP trong Linux] (http://stackoverflow.com/questions/124959/create-word-document-using-php-in-linux) – Gordon

+2

Cũng đừng cho trên PHPDocx. Nó trông giống như một gói phong nha –

+1

Đừng bỏ cuộc trên PHPWord hoặc là ... có rất nhiều công việc đi vào nó. Không phải tất cả các phiên bản của OO đều có thể đọc các tệp docx, bạn có chắc là các phiên bản của bạn không? –

Trả lời

9

Xem ở đây:

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

Để trích dẫn từ các bài báo phương pháp phổ biến nhất:

Sử dụng HTTP Headers

Trong phương pháp này, bạn cần phải định dạng HTML/PHP trang sử dụng CSS thân thiện với Word và thêm thông tin tiêu đề vào tập lệnh PHP của bạn. Hãy làm cho chắc chắn rằng bạn không sử dụng các bảng định kiểu bên ngoài vì mọi thứ phải ở trong cùng một tệp.

Do đó, người dùng sẽ được nhắc tải xuống tệp. Tệp này sẽ không phải là tài liệu Word "gốc" 100% nhưng chắc chắn sẽ mở trong ứng dụng MS Word. Bạn có thể sử dụng phương pháp này cho cả môi trường Unix và 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

Đây là rác. Đừng sao chép và dán nó xung quanh hơn nữa. Gửi tiêu đề HTTP giả mạo cùng với một số đầu ra HTML không ** không ** làm cho nó thành tài liệu Word. Nó có thể đã lừa các trình duyệt để chuyển nó sang Word, nó chuyển đổi nó hoàn toàn. Phiên bản mới hơn sẽ ít nhất là tăng một cảnh báo. Và bất kỳ tường lửa lớp doanh nghiệp nào cũng có khả năng chặn các cách giải quyết thô như vậy. – mario

+0

@mario - lưu ý đây là một số bốn tuổi, và cũng là một phần của câu trả lời trên liên kết trùng lặp mà bạn đã đánh dấu. Tôi đồng ý với một số bản tóm tắt của bạn, tuy nhiên lưu ý rằng 'rác' có khả năng là cường điệu. – SW4

+0

Xin lỗi vì từ ngữ mạnh mẽ, btw. Nhưng mẫu mã này đã được đưa vào những câu hỏi mới của người mới. Chỉ cần đóng chủ đề và làm rõ nó trong bản sao chính. – mario

5

OpenTBS có thể tạo ra các tài liệu Docx trong PHP tinh khiết, sử dụng kỹ thuật của các mẫu.

Đơn giản.

0

Như tôi đã đề cập ở đây PHP Convert Word file to HTML without losing styling and images,

Giải pháp tốt nhất mà tôi đã tìm thấy cho đến nay là http://www.phplivedocx.org/. Bạn sử dụng nó với khung công tác Zend. Rất dễ dàng để thiết lập và bạn có được độ lệch tối thiểu từ định dạng từ thực tế. Nó tạo và chuyển đổi các tài liệu từ từ/sang html (trong số các định dạng khác) rất tốt.

Các vấn đề liên quan