创建有条件的作曲家要求



我已经创建了我的第一个作曲家软件包,该软件包具有MySQL和MongoDB的功能,但是,这两者都不需要。我意识到某人可能只想将包装与两个数据库之一一起使用,目前我有:

"require": {
    "mongodb/mongodb": "^1.2",
}

我试图弄清楚,有没有办法使软件包可选,如果存在,则可以自动加载某些文件?或者我最好在我的代码中做一些事情:

if (class_exists('PDO')) {
    // Load MySQL code
}
if (class_exists('MongoClient')) {
    // Load MongoDB code
}

有其他我想不出的解决方案吗?

"可选"软件包在 composer.json中表现为"建议":

"suggest": {
    "mongodb/mongodb":"Required to use this package with Mongo DB",
    "ext-pdo": "Required to use this package with MySQL",
    "ext-pdo_mysql": "Required to use this package with MySQL"
}

由于这些是可选的,仅仅是建议,因此您的代码需要注意将可选路径包裹在适当的条件下。这可能是对PDO类的测试,对所需类型的连接对象的测试等。

相关内容

  • 没有找到相关文章

最新更新