Php 如何轻松地将PEAR依赖项打包到应用程序?

Php 如何轻松地将PEAR依赖项打包到应用程序?,php,pear,Php,Pear,我正在开发一个利用一些PEAR包的PHP应用程序。我希望能够将应用程序打包到存档中,例如tar、zip等,以便在服务器上轻松下载和提取以运行。我不希望服务器需要PEAR来下载或安装依赖项。有没有一种简单的方法可以将PEAR依赖项打包到应用程序中?有两种部署方法,我建议您同时提供这两种选项: 法尔 扩展文件目录 在这两种情况下,如果要获取所有依赖组件文件,可以查询PEAR以获取这些文件 列出PEAR安装程序安装的软件包 结果列表 列出包XML_Util的文件 结果列表 从这里开始,只需迭代该列表并

我正在开发一个利用一些PEAR包的PHP应用程序。我希望能够将应用程序打包到存档中,例如tar、zip等,以便在服务器上轻松下载和提取以运行。我不希望服务器需要PEAR来下载或安装依赖项。有没有一种简单的方法可以将PEAR依赖项打包到应用程序中?

有两种部署方法,我建议您同时提供这两种选项:

法尔 扩展文件目录 在这两种情况下,如果要获取所有依赖组件文件,可以查询PEAR以获取这些文件

列出PEAR安装程序安装的软件包

结果列表

列出包XML_Util的文件

结果列表


从这里开始,只需迭代该列表并获取文件。您应该能够跳过以doc为前缀的行。

好的,您可能正在PHP中查找


如果我理解正确,这应该可以满足您的要求。

您是否也尝试过将应用程序设置为pear包并定义依赖项?如果不使用pear,如何获得应用程序的pear包及其所有依赖项?除了偶尔使用pear获得一些包外,我对pear不是很有经验。没有人会这样做。但是,由于您的依赖项无论如何都需要pear,所以这不会是一个问题,对吧?是的。我不介意pear在开发机器上,但我不能期望它在运行时环境上。而不是自己创建一个构建任务,并用所有依赖项打包应用程序,以便pear在目标机器上不需要。第二个选项已经不需要了吗?我需要写一个自定义脚本来为我做这件事??
pear list
Installed packages, channel pear.php.net:
=========================================
Package          Version State
Archive_Tar      1.3.7   stable
Console_Getopt   1.3.0   stable
PEAR             1.9.4   stable
Structures_Graph 1.0.4   stable
XML_Util         1.2.1   stable
pear list-files Archive_Tar # or pear list Archive_Tar
Installed Files For Archive_Tar
===============================
Type Install Path
php  /Users/wilmoore/local/php/versions/5.4.0/lib/php/Archive/Tar.php
doc  /Users/wilmoore/local/php/versions/5.4.0/lib/php/doc/Archive_Tar/docs/Archive_Tar.txt