文档章节

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
使用 HAProxy, PHP, Redis 和 MySQL 轻松构建每周上亿请求Web站点

本案例是由Antoni Orfin写的客座文章,他是Octivi的联合创始人和软件架构师。 在文章中,我将向您展示我们开发的基于HAProxy,PHP,Redis和MySQL的非常简单的架构的方法,它可以无缝地处理约...

xxx2xxx
2014/11/07
19.3K
29

没有更多内容

加载失败,请刷新页面

加载更多

金丝雀发布、滚动发布、蓝绿发布到底有什么差别?关键点是什么?

根据 2017 年的 DevOps 发展报告,高效能组织和低效能组织在软件交付的效率上有数量级上的差异。技术组织的软件交付能力是一种综合能力,涉及众多环节,其中发布是尤为重要的环节。 作为技术...

问题终结者
36分钟前
2
0
Kubernetes Client-go Informer 源码分析

几乎所有的Controller manager 和CRD Controller 都会使用Client-go 的Informer 函数,这样通过Watch 或者Get List 可以获取对应的Object,下面我们从源码分析角度来看一下Client go Informe...

阿里云官方博客
今天
4
0
传统IDC部署网站(三)

11. 重置密码 密钥和密码都支持远程登陆, 二选一 两个都可以登陆, 密钥相对于密码来说,相对安全一点 本地登陆无法是用密钥 修改密码 root 用户 passwd root 修改普通用户 passwd usernam...

miko0089
今天
6
0
bash特性

1.支持别名 alias 2.命令替换 $(COMMANS) 或者 `COMMAND` 3. bash支持的引号: `` :命令替换 "":弱引用,可以实现变量替换 '':强引用,不实现变量替换 4.文件名通配 globbing:(man 7 glo...

忙碌的小蜜蜂
今天
3
0
以语音评测的PC端demo代码为例,讲解口语评测如何实现

本文由云+社区发表 作者:腾讯智慧教育 概述 腾讯云智聆口语评测(英文版)(Smart Oral Evaluation-English,SOE-E)是腾讯云推出的语音评测产品,是基于英语口语类教育培训场景和腾讯云的语...

腾讯云加社区
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部