我是 Symfony 的新手,但我知道如何在 PHP 中使用 OOP。我尝试(沮丧地)通过使用 Doctrine 实体将自定义参数与 Symfony 配置结合起来。
为了解决我使用的问题,例如 Michael Sivolobov 的回答:https ://stackoverflow.com/a/28726681/2114615和其他来源。
我的解决方案:
第 1 步:在 config 文件夹中创建新包
-> config
-> packages
-> project
-> services.yaml
-> project
-> src
-> ParameterLoaderBundle.php
-> DependencyInjection
-> Compiler
-> ParameterLoaderPass.php
Run Code Online (Sandbox Code Playgroud)
第 2 步:导入新资源
# config/services.yaml
...
imports:
- { resource: 'packages/project/config/services.yaml' }
...
Run Code Online (Sandbox Code Playgroud)
第 3 步:包装编码
# packages/project/config/services.yaml
services:
Project\:
resource: "../src"
Run Code Online (Sandbox Code Playgroud)
<?php
namespace Project;
use Project\DependencyInjection\Compiler\ParameterLoaderPass;
use Symfony\Component\DependencyInjection\Compiler\PassConfig;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Bundle\Bundle;
class ParameterLoaderBundle extends Bundle
{ …Run Code Online (Sandbox Code Playgroud)