Symfony 5シリーズチュートリアル6-プロファイル
このチュートリアルはsymfony 5に基づいて作成され、後で高バージョンのsymfonyを出すと、この高バージョンの特性に対して1セットだけ作成することができ、このシリーズのチュートリアルはずっと更新されます.
点赞再看,养成习惯,微信搜索公众号【プログラマー老班长】注目このインターネット老班长,查看更多系列文章
目次
1、ディレクトリ構造:
2、コントローラで構成変数を取得する
3,ContainerBagInterfaceを使用して構成変数にアクセスする
4、プロファイルタイプ
プロファイルはsymfonyプログラムのさまざまな環境変数を定義する場所です.
1、ディレクトリ構造:
routes.yaml
このファイルはルーティングプロファイルです
services.yaml
このファイルはコンテナ構成サービスのファイルです.
bundles.php
このファイルは、コンテナがサードパーティ製パッケージを有効にするかどうかを管理するファイルです.
config/packages
このディレクトリがサードパーティ製パッケージのインストール時にデフォルトでインストールされるプロファイル
2、コントローラで構成変数を取得する
書かれたコントローラクラスはAbstractControllerに継承することを推奨します.
これによりgetParameterメソッドを使用して変数を取得できます.
3,ContainerBagInterfaceを使用して構成変数にアクセスする
このContainerBagInterfaceタイプは、コンテナによって自動的に作成され、後で呼び出されます.
4、プロファイルタイプ
.env:アプリケーションに必要な環境変数のデフォルト値を定義します.
.env.local:アプリケーションに必要なローカル環境変数の値を定義します.このファイルはコードライブラリにコミットされず、このファイルに定義された変数が上書きされます.Envの中のファイル.のenv.testはテスト環境で使用するプロファイルです.
文章は更新を続け、微信で公衆番号「プログラマー老班長」を検索してより多くの文章を見ることができる.
点赞再看,养成习惯,微信搜索公众号【プログラマー老班长】注目このインターネット老班长,查看更多系列文章
目次
1、ディレクトリ構造:
2、コントローラで構成変数を取得する
3,ContainerBagInterfaceを使用して構成変数にアクセスする
4、プロファイルタイプ
プロファイルはsymfonyプログラムのさまざまな環境変数を定義する場所です.
1、ディレクトリ構造:
1
2
3
4
5
6
7
your-project/
├─ config/
│ ├─ packages/
│ ├─ bundles.php
│ ├─ routes.yaml
│ └─ services.yaml
├─ ...
routes.yaml
このファイルはルーティングプロファイルです
services.yaml
このファイルはコンテナ構成サービスのファイルです.
bundles.php
このファイルは、コンテナがサードパーティ製パッケージを有効にするかどうかを管理するファイルです.
config/packages
このディレクトリがサードパーティ製パッケージのインストール時にデフォルトでインストールされるプロファイル
2、コントローラで構成変数を取得する
書かれたコントローラクラスはAbstractControllerに継承することを推奨します.
これによりgetParameterメソッドを使用して変数を取得できます.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// src/Controller/UserController.php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class UserController extends AbstractController
{
// ...
public function index()
{
$projectDir = $this->getParameter('kernel.project_dir');
$adminEmail = $this->getParameter('app.admin_email');
// ...
}
}
3,ContainerBagInterfaceを使用して構成変数にアクセスする
このContainerBagInterfaceタイプは、コンテナによって自動的に作成され、後で呼び出されます.
namespace App\Service;
// ...
use Symfony\Component\DependencyInjection\ParameterBag\ContainerBagInterface;
class MessageGenerator
{
private $params;
public function __construct(ContainerBagInterface $params)
{
$this->params = $params;
}
public function someMethod()
{
// get any container parameter from $this->params, which stores all of them
$sender = $this->params->get('mailer_sender');
// ...
}
}
4、プロファイルタイプ
.env:アプリケーションに必要な環境変数のデフォルト値を定義します.
.env.local:アプリケーションに必要なローカル環境変数の値を定義します.このファイルはコードライブラリにコミットされず、このファイルに定義された変数が上書きされます.Envの中のファイル.のenv.testはテスト環境で使用するプロファイルです.
文章は更新を続け、微信で公衆番号「プログラマー老班長」を検索してより多くの文章を見ることができる.