php - 检测 "suggested"软件包是否确实通过composer.phar安装的推荐方法是什么?

标签 php composer-php

我目前正在构建一个小型控制台(symfony 2.1)应用程序(处理语义版本号),如果 gitlib 可用,它可以选择分析给定的 git 存储库。理想情况下,我更喜欢由 Composer 提供的某种机制来检测该库是否可用(类似于提供的自动加载),但据我所知,我必须检查自己。

我在解析composer.lock(看起来更干净)和尝试从库中实例化一个类(独立于composer,但滥用流控制的异常)之间左右为难。后者感觉特别糟糕,因为即使我根本不打算使用实例,我也必须这样做来配置应用程序(具体来说:决定是否在应用程序中注册命令)。

有什么建议吗?

最佳答案

PHP 为此目的提供了 class_exists()。检查类是否已加载 - 默认情况下它将调用自动加载器,因此无需事先使用 try/catch block 实例化它。

如果您尝试通过方式测试扩展,您还可以使用 extension_loaded()function_exists()

关于php - 检测 "suggested"软件包是否确实通过composer.phar安装的推荐方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12749160/

相关文章:

PHP 与 Node REST-API

php session 变量在下一页丢失

php - Composer Github 私有(private)存储库不适用于给定 key

php - 如何在 Laravel 5 中加载外部 PHP 库(具有多个文件夹)?

windows - 处理公司防火墙添加自签名证书

php - 无法加载非 Laravel Composer 包

php - 您的要求无法解析为一组可安装的软件包。 - 交响乐项目

php - 重定向而不是 404 错误页面 - 状态代码不工作 (Nginx)

php - 断言请求动词是 POST

composer-php - 使用 composer 的 simplesamlphp 在更新时覆盖配置文件