Php symfony:如何传递到自己的路径

Php symfony:如何传递到自己的路径,php,symfony,symfony-3.3,Php,Symfony,Symfony 3.3,我正在使用symfony 3.3 我创建了一个捆绑包,通过composer安装到应用程序中的vendor/中。我有这个包需要一些yml文件,我通过依赖注入将这些文件注入其中。到目前为止一切正常。但我也有一个yml文件已经在这个包中,这个包必须知道这个(他自己的)文件的路径 目前我的bundle的一个类中有这个 protected const LOCAL_FILE = __DIR__.'/../Resources/translations/ru.yml'; 它工作得很好,但我认为这不是一个合适的

我正在使用symfony 3.3

我创建了一个捆绑包,通过composer安装到应用程序中的
vendor/
中。我有这个包需要一些yml文件,我通过依赖注入将这些文件注入其中。到目前为止一切正常。但我也有一个yml文件已经在这个包中,这个包必须知道这个(他自己的)文件的路径

目前我的bundle的一个类中有这个

protected const LOCAL_FILE = __DIR__.'/../Resources/translations/ru.yml';
它工作得很好,但我认为这不是一个合适的解决方案。我试图传递给这个类a
%kernel.root\u dir%
,但是我仍然猜不出整个路径

我应该怎样做才是最好的方法呢

更新:按照zerkms的建议,我通过以下方式调用此方法得到结果:

  my.translator:
      ...
      calls:
          - method: configure
            arguments:
               ...
               - '@kernel'
以及具有
locateResource

 protected const LOCAL_FILE = '@MyBundle/Resources/translations/ru.yml';
  ....
  ....
  $this->kernel->locateResource(self::LOCAL_FILE)
你可能用了这个方法


内核对象可以通过容器中的
@kernel
id使用。

检查内核的
locateResource
方法@zerkms我在
services.yml
中向类的构造函数传递什么才能访问此方法?
@kernel
。。。。。。。。它起作用了!太好了!你能用这个建议给我一个答案吗?这样我就可以接受了。你能不能也展示一下你是如何准确地调用这个方法的,从而使答案反映出你的真实情况?它是有效的。我更新了我的帖子来展示我是如何做到的work@user7808407是的,但是您传递给
locateResource
的是什么。