基于CodeIgniter-env的MY_类扩展



我正在从事CodeIgniter 3.1.4项目,并且知道我可以使用前缀为MY_的库类来扩展系统库。

这很好,可以按预期工作,但我希望能够根据当前环境或DotEnv值来确定正在使用的类(我已经有一个工作良好的DotEnw库(

生产站点使用服务器"sendmail"发送电子邮件,我希望能够在开发中使用MailGun(或其他(,允许我在发送之前覆盖'to'值,以便使用类似生产的数据集进行安全开发。

在Laravel中可以实现类似的功能,在Laraver中可以使用.envMAIL_DRIVER=mailgunMAIL_TO_ADDRESS=x@y.com强制所有出站邮件到一个地址进行开发

我相信这一定是可能的,但我缺乏CI方面的经验,以及我应该在框架中实现这一点的地方,这让我很失望。

答案实际上在Vickel发送的链接中。您可以覆盖每个域/环境的配置文件,因此您可以在不同的config.php文件中将MY_前缀更改为your_前缀。

如何做到这一点(引用但调整(:

创建目录application/config/not_my_environment/

将您现有的config.php复制到上述目录中

编辑application/config/not_my_environment/config.php,使其包含您的生产设置

基于htaccess SetEnv变量设置ENVIRONMENT常量(我刚刚在这里发布了一个非常相似的答案:在多个子域中维护同一个项目(,然后允许您在每个域中更改文件。

一旦您运行了自定义的每个部署的配置文件集,您就可以将前缀设置为您喜欢的任何前缀,因此有多个基于MY_、YOUR_、ANY_前缀的类覆盖CI默认值。

相关内容

  • 没有找到相关文章

最新更新