Symfony(PHP框架) V4.0.8 官方版下载
Symfony是一款基于MVC模式的面向对象的PHP5框架,它可以帮助你将web应用程序的业务逻辑、服务器端逻辑和页面显示分开。它也包含了许多的工具和类,这些工具和类可以帮助你缩短开发复杂web应用程序的时间。
【功能特点】
路由
能限制hostname,这就让有大量公共功能的网站可以共用一套代码。URI 识别支持 Reg 检测,知识兔让 url 能定义的随心所欲。知识兔支持前缀,import,便于模块化。
Twig模板
这是我最喜欢的一个组件。它分享了一套不同于 php,但非常适合处理复杂网站结构,页面结构的语法。extension 很方便也很强大,通用的操作通过 extension 能很好的表达,比如需要缓存页面的某个模块到 redis ,写一个 ViewExtension,就能在模板里面用一个方法来缓存特定模块了,非常方便,代码也很容易管理。
composer包管理
让代码的依赖关系变得很清晰。而且知识兔现在第三方有很多不错的 bundle,比如抽象 redis 的 snc/redis-bundle,处理图片的 liip/imagine-bundle,第三方登录的 hwi/oauth-bundle 等等等等。随着自己项目的逐渐成熟,知识兔也可以把项目对 Symfony 的定制独立出来用 composer 来管理,感觉挺不错的。
Event、Listener和Services
非常方便的全局功能处理。惹人讨厌的是配置起来很麻烦,我用的是 yml 配置文件,为了找对路的语法真是掉了一层皮。
Doctrine ORM
一个好处是不用去纠结于数据库的细节,而只需仔细的设计需要持久化的对象。对象之间的关系可以自由设计,知识兔从生成数据库结构到生成查询语句的过程都不用再操心了。另一个好处是查询的时候,知识兔可以不用 sql,dql 这种依赖字符串来表达的查询,而采用对象式,sql 因为是单纯的字符串,整个查询逻辑的控制用代码表达起来很麻烦。
Form组件
Symfony 分享了 form 生成,提交以及验证的功能。组件抽象了三个方面的东西:formType 来维护需要填写保存的值,formTheme 来定义表单的 html 结构,知识兔以及 validation 分享数据验证的功能。这个组件的缺点也很明显,概念太复杂了,如果知识兔遇到要自己定义一个 field,简直就是自找麻烦。
性能
Symfony 分享了一个极好的组件叫 profile,能以图形化的形式显示各个部分代码执行的时间,消耗的内存,还有数据库查询的语句,查询的行数,用到的索引的。配合这个工具来优化代码,知识兔可以让网站跑得飞快。
【安装教程】
1.Linux/Mac OS
在控制台执行如下命令:
$ sudo curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony
将会在你的操作系统创建一个全局命令symfony
2.Windows
在控制台执行如下命令:
c:\> php -r “readfile('http://symfony.com/installer');” > symfony
将下载下来的symfony文件移到你的项目目录,然后知识兔执行以下命令:
c:\> move symfony c:\projects
c:\projects\> php symfony
3.创建一个symfony应用
使用new命令创建第一个symfony应用
# Linux, Mac OS X
$ symfony new my_project_name
# Windows
c:\> cd projects/
c:\projects\> php symfony new my_project_name
下载仅供下载体验和测试学习,不得商用和正当使用。