如何在没有作曲家的情况下安装 Composer PHP 软件包?

2022-08-30 06:53:43

我正在尝试安装Coinbase PHP API,但它需要Composer:

https://github.com/coinbase/coinbase-php

我正在寻找一个通用的PHP解决方案(也许是一个函数),让我将作曲家包直接安装到我的服务器上,而不必使用Composer。

我认为Composer的开发人员相信他们正在帮助人们,但实际上有成千上万的初学者开发人员被“Composer障碍”锁定在学习Web开发之外。

如果有一个灵活的解决方案或一些我们可以在没有Composer的情况下安装的方法,那真的会有所帮助吗?我该怎么做?

请不要用一些讽刺的评论来回应。有些人不想使用Composer,我不明白为什么我们应该被赶到一个特定的第三方软件中来进行Web开发。


答案 1

您可以尝试 https://php-download.com/ 这可以帮助您在大多数时间下载所有依赖项以及文件夹。它承诺作曲家不是必需的。自己试过了。它查找并创建所有必需的文件夹,并将其压缩以供下载。完美工作!vendor


答案 2

composer.json 文件列出了依赖项。在您的示例中:

"require": {
    "php": ">=5.5.0",
    "guzzlehttp/guzzle": "^6.0",
    "psr/http-message": "^1.0",
    "psr/log": "^1.0"
},

然后,您必须在包装商站点中找到相应的包。对每个依赖项重复相同的过程:在其相应的文件中查找其他依赖项,然后再次搜索。composer.json

当您最终拥有所需软件包的完整列表时,您只需要逐个安装它们即可。在大多数情况下,只需将文件拖放到项目目录中的某个位置即可。但是你还必须确保PHP可以找到所需的类。由于您没有使用 Composer 的自动加载程序,因此需要将它们添加到您自己的自定义自动加载程序中。您可以从相应的文件中找出信息,例如:composer.json

"autoload": {
    "psr-4": { "Coinbase\\Wallet\\": "src/" }
},

如果不使用类自动加载器,则需要找出各个语句。你可能需要大量的试验和错误,因为大多数图书馆作者都不关心记录这一点。require_once

另外,为了以防万一对此感到困惑:

  • Composer 具有适用于 Windows 的官方 GUI 安装程序,以及适用于所有平台的复制和粘贴命令行安装过程。
  • Composer 可以在本地运行,其输出只需上传到其他位置。您在共享主机中不需要 SSH。
  • 安装库所需的命令可以从软件包网站复制和粘贴 - 即使软件包维护者不关心记录它,packagist.org 默认生成它。

Composer并不完美,它并不适合所有用例,但是,当涉及到安装依赖于它的库时,它无疑是最好的选择,而且是一个相当不错的选择。


我已经检查了我之后的其他答案。它们主要分为两类:

  1. 安装库并用它来编写自定义下载脚本
  2. 为 Composer 使用基于 Web 的在线界面

除非我错过了什么,否则它们都没有解决OP表达的投诉:

  • 学习曲线
  • 使用第三方软件
  • 可以在服务器上直接开发(我推测使用SSH)
  • 潜在的深层依赖关系树

推荐