PHP tạo tài liệu Word

Để tạo tài liệu từ bằng PHPWord, bạn cần cài đặt các tài nguyên sau trong hệ điều hành của mình

  • PHP phiên bản 5. 3. 3+
  • nhà soạn nhạc
  • Tiện ích mở rộng trình phân tích cú pháp XML [Tiện ích mở rộng này được bật theo mặc định]
  • Thành phần Zend Escaper Cài đặt nó bằng trình soạn thảo yêu cầu zendframework/zend-escaper

Tạo tài liệu Word bằng PHPWord

PHPWord cho phép các nhà phát triển tạo Tài liệu Word mới [DOCX] từ đầu. Nó cho phép bạn thêm đoạn văn mới, tiêu đề, văn bản, hình ảnh, siêu liên kết, biểu đồ và hơn thế nữa. Tạo một tài liệu word rất đơn giản, bạn cần tạo một tài liệu mới bằng phương thức PhpWord[]

Tạo từ trong PHP

  1. Tạo văn bản word bằng PhpWord
  2. Thêm phần trong tài liệu
  3. Thêm văn bản vào phần
  4. Lưu tài liệu

Tạo một tài liệu Word - PHP

addSection[];
// Add Text element to the Section
$section->addText[
  'File Format Developer Guide - '
  . 'Learn about computer files that you come across in '
  . 'your daily work at: www.fileformat.com'
];

// Save document
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter[$phpWord, 'Word2007'];
$objWriter->save['HelloWorld.docx'];
  

Định cấu hình cài đặt tài liệu một cách dễ dàng

Bạn có thể thực hiện các cài đặt khác nhau của tài liệu. Độ phóng đại mặc định cho tài liệu là 100% nhưng bạn có thể thay đổi nó thành một số giá trị khác. Đối với tài liệu hai mặt, e. g. tạp chí, bạn có thể thiết lập các trang đối diện bằng cách phản chiếu lề trang. Bạn có thể tinh chỉnh trạng thái tùy chọn tự động kiểm tra lỗi ngữ pháp hoặc lỗi chính tả

Tính năng theo dõi sửa đổi tài liệu cũng có sẵn. PHPWord có thể được cấu hình để hoạt động với các ngôn ngữ Latinh, ngôn ngữ Đông Á cũng như các ngôn ngữ Phức hợp [Hai chiều]. Bạn có thể bảo vệ tài liệu hoặc một phần của nó bằng mật khẩu

Có rất nhiều tính năng khác mà PHPWord cho phép bạn định cấu hình cho tài liệu, một số trong số đó bao gồm thông tin tài liệu, đơn vị đo lường, gạch nối và tự động tính toán lại các trường tài liệu bất cứ khi nào tài liệu được mở

Đặt thuộc tính DOCX - PHP

getDocInfo[];
$properties->setCreator['Ali Ahmed'];
$properties->setCompany['File Format'];
$properties->setTitle['PHPWord'];
$properties->setDescription['File Format Developer Guide'];
$properties->setCategory['My category'];
$properties->setLastModifiedBy['My name'];
$properties->setCreated[mktime[0, 0, 0, 3, 12, 2019]];
$properties->setModified[mktime[0, 0, 0, 3, 14, 2019]];
$properties->setSubject['PHPWord'];

// Save document
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter[$phpWord, 'Word2007'];
$objWriter->save['DocumentProperties.docx'];
  

Bộ chứa để sắp xếp các phần tử tài liệu

PHPWord có các đối tượng được gọi là thùng chứa, chứa các thành phần khác nhau [bảng, văn bản, v.v.] của tài liệu. Có 3 thùng chứa chính; . Ngoài ra, có 3 yếu tố có thể đóng vai trò là thùng chứa;

Tất cả các yếu tố hiển thị của tài liệu cần được đặt bên trong một phần. Bạn có thể gán số trang, số dòng, thay đổi bố cục thành nhiều cột và tạo đầu trang/chân trang

Thêm vùng chứa tiêu đề

addSection[];
// Add Header
$header = $section->addHeader[];
$header->addImage['word-processing-image.png'];
// Save document
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter[$phpWord, 'Word2007'];
$objWriter->save['Container.docx'];

Bảo vệ tài liệu Word qua PHPWord API

Luôn luôn khôn ngoan để bảo vệ hoặc bảo mật các tài liệu quan trọng của bạn bao gồm thông tin nhạy cảm. Thư viện PHPWord nguồn mở cho phép các nhà phát triển Phần mềm bảo vệ tài liệu Word của họ bằng cách cung cấp một mật khẩu duy nhất bên trong các ứng dụng PHP của họ. Tính năng bảo vệ sẽ hoạt động như một biện pháp bảo vệ, ngăn chặn truy cập trái phép hoặc thay đổi tài liệu Word

Hân hạnh thông báo phpdocx 13. 5, phiên bản mới của thư viện. phpdocx 13. 5 kết hợp các tính năng, phương pháp và tùy chọn mới, cũng như các cải tiến trong các phiên bản trước. Chúng tôi chắc chắn rằng bạn sẽ thấy chúng là một lợi ích thiết yếu cho các dự án của bạn. Để có được phpdocx 13. 5, vui lòng vào phần Định giá và chọn [các] giấy phép phù hợp nhất với bạn

PHPWord là một thư viện được viết bằng PHP thuần túy cung cấp một tập hợp các lớp để ghi và đọc từ các định dạng tệp tài liệu khác nhau. Phiên bản hiện tại của PHPWord hỗ trợ Microsoft Office Open XML [OOXML hoặc OpenXML], Định dạng Tài liệu Mở OASIS cho Ứng dụng Office [OpenDocument hoặc ODF], Định dạng Văn bản có Định dạng [RTF], HTML và PDF

PHPWord là một dự án nguồn mở được cấp phép theo các điều khoản của LGPL phiên bản 3. PHPWord nhằm mục đích trở thành một sản phẩm phần mềm chất lượng cao bằng cách kết hợp tích hợp liên tục và thử nghiệm đơn vị. Bạn có thể tìm hiểu thêm về PHPWord bằng cách đọc Tài liệu dành cho nhà phát triển

Nếu bạn có bất kỳ câu hỏi nào, vui lòng hỏi trên StackOverFlow

Đọc thêm về PHPWord

  • Tài liệu dành cho nhà phát triển

Đặc trưng

Với PHPWord, bạn có thể tự động tạo các tài liệu OOXML, ODF hoặc RTF bằng cách sử dụng các tập lệnh PHP của mình. Dưới đây là một số điều bạn có thể làm với thư viện PHPWord

  • Đặt thuộc tính tài liệu, e. g. tiêu đề, chủ đề và tác giả
  • Tạo các phần tài liệu với các cài đặt khác nhau, e. g. dọc/ngang, kích thước trang và đánh số trang
  • Tạo đầu trang và chân trang cho từng phần
  • Đặt loại phông chữ, cỡ chữ và kiểu đoạn văn mặc định
  • Sử dụng phông chữ/ký tự UTF-8 và Đông Á
  • Xác định kiểu phông chữ tùy chỉnh [e. g. đậm, nghiêng, màu] và kiểu đoạn văn [e. g. căn giữa, nhiều cột, giãn cách] dưới dạng kiểu được đặt tên hoặc nội tuyến trong văn bản
  • Chèn các đoạn văn, dưới dạng văn bản đơn giản hoặc phức tạp [một đoạn văn bản] có chứa các phần tử khác
  • Chèn tiêu đề [headers] và mục lục
  • Chèn ngắt văn bản và ngắt trang
  • Chèn và định dạng hình ảnh, cục bộ, từ xa hoặc dưới dạng hình mờ trang
  • Chèn các đối tượng OLE nhị phân như Excel hoặc Visio
  • Chèn và định dạng bảng với các thuộc tính tùy chỉnh cho mỗi hàng [e. g. lặp lại dưới dạng hàng tiêu đề] và các ô [e. g. màu nền, rowspan, colspan]
  • Chèn các mục danh sách dưới dạng dấu đầu dòng, đánh số hoặc đa cấp
  • Chèn siêu liên kết
  • Chèn cước chú và chú thích cuối
  • Chèn hình vẽ [cung, đường cong, đường thẳng, đa tuyến, hình chữ nhật, hình bầu dục]
  • Chèn biểu đồ [bánh, bánh rán, thanh, đường, vùng, phân tán, radar]
  • Chèn các trường biểu mẫu [nhập văn bản, hộp kiểm và danh sách thả xuống]
  • Tạo tài liệu từ mẫu
  • Sử dụng XSL1. 0 để chuyển đổi tiêu đề, phần tài liệu chính và chân trang của mẫu OOXML
  • và nhiều tính năng khác về tiến độ

Yêu cầu

PHPWord yêu cầu như sau

  • PHP7. 1+
  • Tiện ích mở rộng Trình phân tích cú pháp XML
  • Thành phần Laminas Escaper
  • Phần mở rộng zip [tùy chọn, được sử dụng để viết OOXML và ODF]
  • Tiện ích mở rộng GD [tùy chọn, được sử dụng để thêm hình ảnh]
  • Phần mở rộng XMLWriter [tùy chọn, dùng để viết OOXML và ODF]
  • Tiện ích mở rộng XSL [tùy chọn, được sử dụng để áp dụng biểu định kiểu XSL cho mẫu]
  • thư viện dompdf [tùy chọn, dùng để viết PDF]

Cài đặt

PHPWord được cài đặt qua Composer. Đến PHPWord trong dự án của bạn, hoặc

Chạy phần sau để sử dụng phiên bản ổn định mới nhất

composer require phpoffice/phpword

hoặc nếu bạn muốn phiên bản mới nhất chưa được phát hành

composer require phpoffice/phpword:dev-master

Bắt đầu

Sau đây là ví dụ sử dụng cơ bản của thư viện PHPWord

Chủ Đề