簡體   English   中英

如何閱讀config / app.php中定義的“電子郵件”選項?

[英]How to read the 'Email' options defined in config/app.php?

我正在嘗試使用Configure::read('Email'); config/app.php定義的電子郵件選項Configure::read('Email'); ,但返回null 使用Configure::read(<options name>)可以很好地讀取其他選項。

我認為閱讀“ Email選項被某種方式阻止了。 如何使用Configure::read()config/app.php定義的config/app.php讀取“ Email選項? 我是否必須以其他方式閱讀它們?

消耗的配置被刪除

在某些時候某些配置正在“消耗”,默認情況下,當前是CacheDatasourcesEmailTransportEmailLogSecurity.salt ,請參閱您的應用程序config/bootstrap.php文件。

https://github.com/cakephp/app/blob/3.2.4/config/bootstrap.php#L146-L151

使用密鑰會導致在讀取密鑰后將其刪除,因此在引導程序中此點之后將不再有Email配置,因此在嘗試讀取密鑰時會收到null

從使用者那里檢索配置

如果您想在以后訪問此類配置,則應通過使用它的類(在您的情況下為Email類)來訪問它,即通過

\Cake\Network\Email\Email::config() // (CakePHP < 3.1)

要么

\Cake\Mailer\Email::config() // (CakePHP >= 3.1)

取決於您的CakePHP版本。

也可以看看

在CakePHP版本> 3.4中,您必須使用

\Cake\Mailer\Email::getConfigTransport('smtp');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM