文档章节

Symfony2 Service每次get都获取新的实例

l
 light_
发布于 2016/05/12 16:34
字数 180
阅读 24
收藏 0

Services Instance Default

在symfony2中service默认实例化一次,例子如下:

// services.yml
servieces:   
    app_test:
          class: AppBundle\Service\AppService
    $appService1 = $this->get("app_test");
    $appService1->setName("appService1");
    $appService2 = $this->get("app_test");
    $appService2->setName("appService2");
    var_dump($appService1->getName());
    var_dump($appService2->getName());
    var_dump($appService1 === $appService2);
    运行结果:
        string 'appService2' (length=11)
        string 'appService2' (length=11)
        boolean true

##Non Shared Services 在symfony2中service如果需要每次get的时候获取新的实例,需要加上参数shared(这个参数只适用于symfony 2.8以后),例子如下:

// services.yml
servieces:   
    app_test:
          class: AppBundle\Service\AppService
          shared: false
    $appService1 = $this->get("app_test");
    $appService1->setName("appService1");
    $appService2 = $this->get("app_test");
    $appService2->setName("appService2");
    var_dump($appService1->getName());
    var_dump($appService2->getName());
    var_dump($appService1 === $appService2);
    运行结果:
        string 'appService1' (length=11)
        string 'appService2' (length=11)
        boolean false

© 著作权归作者所有

共有 人打赏支持
l
粉丝 1
博文 8
码字总数 2973
作品 0
芜湖
程序员
私信 提问
Symfony2 在服务中注入Request

Uncaught exception 'SymfonyComponentDependencyInjectionExceptionScopeWideningInjectionException' with message 'Scope Widening Injection detected: The definition "user.registrati......

mot_evans
2014/04/15
0
0
深入浅出Symfony2 - 如何提高网站响应速度

简介 Symfony2是一个基于PHP语言的Web开发框架,有着开发速度快、性能高等特点。但Symfony2的学习曲线也比较陡峭,没有经验的初学者往往需要一些练习才能掌握其特性。相对其他框架,Symfony...

丰圣谋
2013/07/30
0
1
SonataEasyExtendsBundle功能包:让您的Symfony2功能包可被扩展

Note this post is not part of the Symfony2 documentation; it is just a state about how things work now (end of 2010) between Doctrine2 and Symfony2. It is not a complaint about ......

firehare
2014/04/18
0
0
Create new log file/channel for a Symfony Service with Monolog

n this article about WSSE and Rest, we describe how to create a new log file/channel with monolog in Symfony2 Insert the logger in your service with a new Channel In this exampl......

jims
2016/11/13
8
0
2015 年最好的 PHP 框架调查统计

一个月前,我们就开始了一年一度SitePoint框架人气调查。现在月份已经到期, 这需要时间来看看结果。 共收到的回应是7800+个(项),至今远远超过其他任何以前开展的调查,甚至在过滤掉无效的...

phpmy56
2015/04/09
82.2K
83

没有更多内容

加载失败,请刷新页面

加载更多

移动端Appium自动化测试框架的优势

众所周知,现在市面上的移动端操作系统已被Android和IOS占领,其中Android的份额更是在80%以上。那么面对市面上林林总总的自动化测试框架和工具,为什么说Appium在自动化测试框架的统治级优势...

程序猿拿Q
6分钟前
0
0
设计模式 之 观察者模式

设计模式 之 观察者模式 场景 场景比较简单,当一个对象的状态发生改变时,自动通知所有依赖(或观察)它的对象。 比如:发布/订阅 原理:发布者存储N个订阅者的对象信息,当发布者发布消息时...

GMarshal
10分钟前
0
0
linux 常用

netstat -tunlp |grep 8080 查看8080 占用 netstat -tunlp 用于查看所有的端口号的进程情况

west_coast
14分钟前
1
0
Bytom信息上链教程

比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom 很多了解比原链的都知道,比原链是专注信息和数字资产在链上交互和流转的...

比原链Bytom
20分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部