[英]How Can I define global CONST variables in Symfony framework?
如何在我的應用程序 symfony 中定義全局 CONST 變量? 在 symfony 中定義全局變量的良好做法是什么? Mayby 我應該創建接口並使用 DI 嗎?
您應該將變量添加到app/config/config.yml
;
# app/config/config.yml
parameters:
myVariable: 10
你可以使用它;
$this->getParameter('myVariable');
如果它是一個常數,它就不會改變,換句話說:它不是一個參數。 因此,將它放在 Symfony 配置文件中是沒有意義的,也不是最佳選擇。
在我看來,最佳實踐是在您使用的類中定義它:
namespace App\Entity;
class Foo {
const MyConst = 'A value';
/* ...... */
如果您在不同的地方需要它,您可以創建一個類來定義您的應用程序常量:
namespace App\Classes;
class Constants {
const MyConst = 'Hello world!';
/* ...... */
}
然后,您可以在任何需要的地方使用這個類:
namespace App\Controller\Frontend;
use App\Classes\Constants;
class FooController extends AbstractController
{
/* ...... */
public function bar()
{
echo Constants::MyConst;
}
}
所有這一切都是基於它的值不依賴於環境的事實,如果不是這樣,你應該使用 .env 文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.