Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony注入无法注入对象_Php_Symfony_Doctrine Orm - Fatal编程技术网

Php Symfony注入无法注入对象

Php Symfony注入无法注入对象,php,symfony,doctrine-orm,Php,Symfony,Doctrine Orm,我正在使用symfony2,我正在尝试创建一个自定义服务容器来处理一些计算 我的服务 services: my_calculator: class: my_app\HomeBundle\Services\CalculatorService arguments: [doctrine] 计算器服务如下所示 <?php namespace my_app\HomeBundle\Services; use my_app\Categor

我正在使用symfony2,我正在尝试创建一个自定义服务容器来处理一些计算

我的服务

services:
    my_calculator:
        class:        my_app\HomeBundle\Services\CalculatorService
        arguments:    [doctrine]
计算器服务如下所示

<?php 
namespace my_app\HomeBundle\Services;

use my_app\CategoryBundle\Entity;

class CalculatorService
{
    protected $doctrine;

    public function __construct($doctrine)
    {
        $this->doctrine = $doctrine;
    }

    public function calculate($data=array())
    {
        if(!empty($data))
        {
        }
    }
}
我的问题是条令对象无法到达构造函数

我尝试了
参数:[@doctrine]
参数:[@doctrine.orm.entity\u manager]

但一旦我在yml文件中写入
@
,就会出现解析错误


请帮助

这是entity manager注入的工作代码示例

服务.yml

my_service:
    class: GLS\DemoBundle\MyService
    arguments: ["@doctrine.orm.entity_manager"]
服务类别:

class MyService
{
    protected $em;

    public function __construct(\Doctrine\ORM\EntityManager $em)
    {
        $this->em = $em;
    }

}

这是EntityManager注入的工作代码示例

服务.yml

my_service:
    class: GLS\DemoBundle\MyService
    arguments: ["@doctrine.orm.entity_manager"]
服务类别:

class MyService
{
    protected $em;

    public function __construct(\Doctrine\ORM\EntityManager $em)
    {
        $this->em = $em;
    }

}