2015-01-16 5 views
0

Я хочу, чтобы я не вводил класс Memcached в мой servcie путем инъекции setter. Но я не знаю, как я могу это сделать. Может кто-нибудь мне помочь? Вот что я уже пробовал:Как ввести класс Memcached для обслуживания Symfony2

<service id="uber.memcached" class="Bundle" > 
     <call method="setMemcached"> 
      \Memcached 
     </call> 
    </service> 
+1

Создать новую услугу с классом «Memcached», а затем введите его в вашу службу. Например: '' – Touki

+0

@Touki, да, вы лучшие! Благодаря! – nowiko

ответ

1

Настройте услуги в service.xml файл

// memcached service 
<service id="memcached" class="Memcached" /> 

// memcached injection 
<service id="uber.memcached" class="App\Bundle\Foo"> 
    <call method="setMemcached"> 
    <argument type="service" id="memcached" /> 
    </call> 
</service> 

И затем, использовать его на своем классе обслуживания

// App/Bundle/Foo.php 

namespace App\Bundle; 

Class Foo { 

    public function setMemcached($service) { 
     // your code 
    } 
} 
Смежные вопросы