2010-02-17 31 views
7

Cách tốt để đóng gói ứng dụng web trong PHP để triển khai dễ dàng là gì? Hiện tại, tôi đang sử dụng make để tạo một tệp tar gzipped. Trong Java, hầu hết mọi người sử dụng Maven và xây dựng WAR. Tôi tự hỏi nếu có một thực hành tiêu chuẩn tương tự trong thế giới PHP.Bao bì/Triển khai PHP

Có một Maven cho PHP. Tôi tự hỏi nếu đó là con đường để đi.

+0

1. http://www.capify.org/index.php/Capistrano 2. http://ant.apache.org/ –

+0

Đối với tất cả giải pháp PHP, chúng tôi sử dụng [Phingistrano] (https://github.com/CodeMeme/Phingistrano). Nó cung cấp cho bạn rất nhiều chức năng của Capistrano, nhưng được viết bằng php bằng cách sử dụng các kịch bản xây dựng [Phing] (http://www.phing.info). Nó đã được tuyệt vời cho chúng tôi. – Clint

+0

Nếu bạn muốn sử dụng maven một cách rõ ràng, bạn cần phải sử dụng nó cùng với kiến ​​để triển khai các dự án php, sau đó sử dụng ant maven plugin để làm cho nó hoạt động với maven. – ant

Trả lời

12

Bản lưu trữ PHP có thể bạn quan tâm.

Xem manual.

Phần mở rộng phar cung cấp cách để đưa toàn bộ ứng dụng PHP vào một tệp gọi là "phar" (Lưu trữ PHP) để dễ dàng phân phối và cài đặt. Ngoài việc cung cấp dịch vụ này, phần mở rộng phar cũng cung cấp một phương thức trừu tượng định dạng tệp để tạo và thao tác các tệp tar và zip thông qua lớp PharData, nhiều như PDO cung cấp một giao diện thống nhất để truy cập các cơ sở dữ liệu khác nhau. Không giống như PDO, không thể chuyển đổi giữa các cơ sở dữ liệu khác nhau, Phar cũng có thể chuyển đổi giữa các định dạng tệp tar, zip và phar với một dòng mã. xem Phar :: convertToExecutable() cho một ví dụ.

5

http://phing.info/

Phing Không là GNU làm; đó là một dự án xây dựng hệ thống PHP hoặc công cụ xây dựng dựa trên Apache Ant. Bạn có thể làm bất cứ điều gì với nó mà bạn có thể làm với một hệ thống xây dựng truyền thống như GNU, và việc sử dụng các tệp xây dựng XML đơn giản và các lớp "nhiệm vụ" mở rộng của PHP làm cho nó trở thành một khung công tác dễ sử dụng và linh hoạt. Các tính năng bao gồm chạy thử nghiệm đơn vị PHPUnit và SimpleTest (bao gồm kết quả kiểm tra và báo cáo vùng phủ sóng), chuyển đổi tệp (ví dụ: thay thế mã thông báo, chuyển đổi XSLT, chuyển đổi mẫu Smarty), hoạt động hệ thống tệp, hỗ trợ xây dựng tương tác, thực thi SQL, hoạt động CVS/SVN, công cụ tạo các gói PEAR và hơn thế nữa.