如何从Component包中覆盖类?

Ral*_*lfp 1 php symfony

我正在使用Symfony 2和FOSUserBundle编写应用程序.我想允许多个用户注册相同的名称并使用电子邮件来识别它们.我为此编辑了用户管理器,将loadUserByUsername转换为findUserByEmail()的包装器.这个破坏的TokenBasedRememberMeServices使用getUsername()来生成记住我的令牌.我怎样才能用自己的类替换那个类,以免每次更新FW框架版本时都强迫自己进入黑客symfony文件?

Ral*_*lfp 5

我找到了一个方法:

Symfony bundle将类名存储在其配置文件params中.您可以通过在config.yml中添加以下行来覆盖这些参数:

# Parameters override
parameters:
    security.authentication.rememberme.services.simplehash.class: MyVendor\UserBundle\RememberMe\TokenBasedRememberMeServices
Run Code Online (Sandbox Code Playgroud)