类型:编程其它大小:7.90 MB
语言:简体中文 日期:2019-03-11
Symfony是一个基于MVC模式的面向对象的PHP5框架,它可以帮助你将web应用程序的业务逻辑、服务器端逻辑和页面显示分开。它也包含了许多的工具和类,这些工具和类可以帮助你缩短开发复杂web应用程序的时间。
Symfony是国外最流行的PHP开发框架,近年来Symfony正以迅雷不及掩耳之势迅速占据国内PHP开发框架的市场份额,鉴于symfony2高度重视业务逻辑、代码易读、维护轻松,能大大提升团队的开发效率,提高代码性能,现在Symfony2框架已成为大型互联网公司的首选框架。
路由
能限制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
Visual Studio Code最新版由ucbug下载站提供下载,Visual Studio Code官方最新版是一款非常强大而且好用的编译软件,软件拥有一个非常强大的调试器,能够帮助用户们快速完成代码的编辑,而且软件还有自带模拟功能,用户可以在软件中进行程序模拟,看下是否达到预期的效果,软件支持多种语言编译,常见的30种编程语言都能使用。
双彩飞扬MD5校验工具 ,能够校验软件或者iso文件的md5值,我们平时在网上下载软件或者ISO文件都是有唯一的MD5值,总怕是别人修改过的,这种情况下就需要校验原版的md5值与下载的md5值是否相同了,若果相同则是没有修改过的,若不同则是有过修改。 功能介绍:
Geany 是一个使用GTK2工具包开发的快速和轻巧的集成开发环境(IDE),具有语法高亮显示,代码折叠,代码自动补完等功能,就算是新手用户也能马上上手。 软件特色: 1、基于路径的编译器支持:通过使用内置的路径添加支持,你可以Geany位于你需要编译任何语言
Zettlr 是专为需要学术撰写和记笔记的人员制作的一款专用的Markdown编辑器,内置各种运算符,还可以调用计数器,为了方便你调用命令,很多命令可以直接调用,大大提高了科研人员撰写科学论文和记笔记的能力。 功能介绍: 从应用程序中直接管理你的文件和文件
Hasher Pro(MD5校验工具) 是一款可以方便用户对某个制定文件进行md5,哈希(hash)值进行校验的工具,每个文件都有属于自己的身份证,不管怎么修改,hash值是不会改变的,使用这款Hasher Pro(MD5文件校验工具)可以更好的校验。 基本简介: Hasher Pro 是一款小