gpt4 book ai didi

PHP全局安装包 : apt-get vs composer

转载 作者:太空狗 更新时间:2023-10-29 11:41:09 26 4
gpt4 key购买 nike

我发现有两个选项可以在 Linux (Ubuntu 16.04) 中全局安装 PHP 包:

  1. 使用 Composer :

    composer global require symfony/finder

    包将位于 ~/.config/composer/vendor/

    enter image description here

  2. 使用 apt-get:

    apt-get install php-symfony-finder

    包将位于 /usr/share/php/

    enter image description here

    这个目录 /usr/share/php/ 也在默认的 PHPs include_path 中(我有 PHP 7.2)

    enter image description here


我有几个问题:

为什么我要全局安装包?

我知道全局安装 php 工具很有用,比如 phpunit - 它有二进制文件,允许你在任何地方运行测试,所以你不必在每个项目中都安装它。但是,例如 symfony/finder 呢?全局安装的这个包有什么特殊用途?

1 和 2 选项有什么区别?

它有任何不同的用例或不同的效果吗?

最佳答案

为什么我要全局安装包?

通常,这些是您希望在几乎每个项目中使用的依赖项,因为它们在系统级别可用,您可以使用它们而无需在您创建的每个应用程序中复制它们的依赖项。

例如,在我的例子中,我有 php_mdphp_cs 用于代码格式化,phpunit 用于测试。

1 和 2 选项有什么区别?

两者都是包管理器,它们确保安装的每个包都具有正确的依赖项,因此它们的核心功能相似。

现在,它们有几个不同点:

  • 他们专注于他们管理的包,composer 专用于基于 php 的包,而 apt-get 用于 Linux 和更多系统级别导向。
  • 他们的包数据库,composer 使用 packagist apt-get 使用一系列存储库和 ppas(您可以在 /var/lib/apt/lists/ 中找到它们)。
  • 包的选择,因为 composerphp 的专家,所以你可以期待更多与 php 相关的东西。

总而言之,你可以清楚地让它与两者一起工作,但我建议你保留与 composer 相关的所有 php,将它们统一在同一个管理器下。

欢迎提出我忽略的任何其他差异或更正。

关于PHP全局安装包 : apt-get vs composer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49535980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com