YP.Lam

# SYMFONY

Symfony 4 the new way

Symfony 5 已经发布了一段时间,Symfony 4 也出了 4.4 LTS 版本,于是准备把手上一个历史遗留项目升级到 4.4,然而一动手就遇到麻烦,因为现在官方已经不推荐使用之前那种传统的大 bundle,而是倾向于更通用的组件(作为一个从 Symfony 2 过来的用户,不得不说挺支持官方的做法,因为经常会因为有 bundle 不及时更新而导致 composer 冲突)。

本文章将尝试从头开始创建一个 Symfony 4 基础应用。


Symfony 4 尝鲜

Symfony 4 如期在11月的最后一天发布,相比与 Symfony 2 到 Symfony 3 的升级,Symfony 4 的变化似乎更大,特别是由于加入 Flex 以及 Service Autowired,开发方式都会发生比较大的变化。


Symfony 性能优化

测试环境 ubuntu 14.04, php 5.5.9,使用 ab -c 10 -t 5 的方式针对不同的Symfony配置进行性能测试。


Symfony2 太“重”了?试试 Symfony2 微框架

Symfony2 是一个全功能的框架,因此有些开发人员会以它太“重”了(而不是太“难”了)为理由而拒绝使用。在开发环境下,一个简单的Symfony页面大概需要花费 70ms,而prod环境下大概需要30ms(以上是个人在一个Web App上实践后数据)。虽然相对其提供的功能而言,这是一个可观的数据,但对于一个简单的REST API请求而言,这也许真的太“重”了。


使用 Jenkins 与 Github 对 Symfony 2 应用进行持续集成

持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能。本文记录如何使用 Jenkins 与 Github 对 Symfony 2 应用进行持续集成。


如何将一个Drupal网站转到Symfony

最近尝试将自己的一些Drupal网站转移到Symfony(这个个人博客就是其中之一),下面分享一些转移过程的心得,主要包括Drupal基本功能在Symfony上的实现。


SonataAdminBundle创建自定义后台页面

SonataAdminBundle可以非常简便地实现CRUD页面,然而,如果我们需要在后台中实现与Entity无关的管理页面,应该怎么办呢?下面分享自己在摸索工程中的一个实现方法。


使用twigExtension实现页面区块功能

所谓区块,就是在页面中展示的一块内容,可以与当前页面内容相关或者无关。譬如常见的在网站侧边栏展示 “最新文章”区块,或者在文章内容页展示“相关文章”区块。


30个最常用的Symfony组件

在Symfony官网上有个投票,让用户选出工作中最有用的组件,下面是评选结果:


FOSUserBundle 入门

这是一篇介绍FOSUserBundle的安装与配置笔记,面向Symfony2.1+,更详细的内容请参考:https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/index.md


Symfony服务容器 ( Symfony Service Container )

这是一篇关于Symfony2服务容器实现的笔记,原文请查看文章末尾的相关资料部分。

上一篇笔记介绍了依赖注入容器,依赖注入容器使得对各种系统功能的调用变得简便,但同时引入了一个新的问题就是容器的编写与维护变得非常复杂。Symfony2试图通过ServiceContainer、ServiceContainerBuilder以及xml、yml配置文件来使容器的实现变得简单。


依赖注入容器(Dependency Injection Container)

这是一篇关于Symfony依赖注入容器 Dependency Injection Container 的笔记,原文地址:http://fabien.potencier.org/article/12/do-you-need-a-dependency-injection-container


依赖注入 ( Dependency Injection )

这是一篇关于Symfony依赖注入(Dependency Injection)的笔记,原文地址:http://fabien.potencier.org/article/11/what-is-dependency-injection


Symfony2 启动流程分析

Symfony2 启动流程分析


使用Capifony对Symfony网站进行发布

以前一直使用Drupal来搭建网站,由于需要定制的代码量不是很大,所以每次修改都是直接用sftp传到服务器,再到Drupal后台清一下缓存。最近使用Symfony2进行开发,到了发布环节遇到了问题。Symfony代码的发布并不像其他CMS那么方便,因为更新代码后还需要assetic:dump,assets:install,cache:clear等一系列操作,因此每次更新往往需要登录到服务器去更新代码,运行清理cache的一系列命令。 capifony是针对Symfony开发的应用部署脚本,基于Capistrano。使用capifony只需要进行简单的配置,就可以很方便的将代码部署到不同的服务器上。