Symfony是什么

Fanly 问答 2019-07-26 11:31:17 阅读(...)

Symfony是一款基于MVC架构的PHP框架。它是一款免费软件,在MIT License许可下发行。Symfony致力于减少重复代码的编写,以加速Web应用的开发和维护。

Symfony 是一款基于 MVC 架构的 PHP 框架。它是一款免费软件,在 MIT License 许可下发行。2005 年 10 月 18 日,其官方网站 symfony-project.com 对外开放。2011 年 Symfony2 正式发布,随即启用全新的官方网站 symfony.com。

symfony

目标

Symfony 致力于减少重复代码的编写,以加速 Web 应用的开发和维护。它需要以下软件的支持:安装过 PHP5 的 Unix,Mac OS 或 Microsoft Windows 等操作系统作为 WEB 应用服务。Symfony 与许多关系型数据库集成的也非常好,成本也较小。

Symfony 致力于在企业背景下创建健壮的应用,同时也给予了开发者强大的配置功能:从文件结构到外部目录,几乎所有的东西都可以自定义。Symfony 也捆绑了一些诸如测试、调试、文档生成等额外的工具来满足企业的开发过程。

技术

Symfony 使用了大量的设计模式,比如 MVC 模式,它分离了业务逻辑层和表示层,降低了耦合性,使程序更易于维护。
Symfony 使用了以下一些 PHP 开源项目的部分功能。

  • Propel (PHP):用作对象关系映射(ORM)
  • Doctrine (PHP):用作对象关系映射(ORM)
  • Creole:用作数据库抽象层
  • Prado:用作国际化支持
  • Spyc:用作解析 YAML
  • Pake:用作命令行工具
  • Twig:用作模板引擎

Symfony 也使用了一些开源的 Javascript 库。

  • Prototype:用作 javascript 框架(v 1.0 和 1.1)
  • script.aculo.us:用作视觉特效(v 1.0 and 1.1)
  • Dynarch.com,用作 DHTML 日历(v 1.0 and 1.1)
  • TinyMCE,用作富文本编辑器(v 1.0)
  • FCKeditor,用作富文本编辑器

在 symfony1.2 中默认状态没有包含任何 JavaScript 框架,开发者必须手动选择并添加 JavaScript 框架。

赞助

Sensio 是 Symfony 的赞助商,它是一家法国 Web 代理商。起先 Symfony 使用 Sensio Framework 作为该项目的名字,因此代码中所有的类名前都加上了”sf”前缀,当它决定以开源形式发布时,便以 Symfony 作为名称(Symfony 的英文缩写也是 sf)。

应用

一款开源的 Q&A 服务 Askeet 就是使用 Symfony 开发的。许多其他应用,包括拥有 2000 万用户的 Yahoo Bookmarks,也是使用 Symfony 开发的。

收藏 0个人收藏
走进科技生活方式

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • JetBrains PhpStorm

    PhpStorm是什么软件

    PhpStorm是一个基于JetBrains的IntelliJ IDEA平台的PHP商业跨平台IDE。提供PHP,HTML和JavaScript编辑器,具有动态代码分析,错误预防和PHP和JavaScript代码的自动重构。
  • Swoole

    Swoole是什么

    Swoole是一种PHP高级Web开发框架,框架不是为了提升网站的性能,是为了提升网站的开发效率。最少的性能损耗,换取最大的开发效率。利用Swoole框架,开发一个复杂的Web功能,可以在很短的时间内完成。
  • Contao

    Contao是什么

    Contao是一个开源PHP内容管理系统(CMS),适用于想要一个易于维护的专业网站的用户。该程序专研于后台(即开发者)和前台(即用户)的易用性,并遵守XHTML、HTML5、CSS标准,根据W3C/WAI 准则,生成页面。
  • Laravel

    Laravel是什么框架

    Laravel 是一个由Taylor Otwell所建立,免费的开源 PHP Web 框架,旨在实现的Web软件的MVC架构,并作为CodeIgniter的替代方案。其源代码托管于GitHub,许可条款为MIT许可证。
  • SpeedPHP

    SpeedPHP框架是什么

    SpeedPHP是一款全功能的国产PHP应用框架系统。以“快速开发、快速学习、快速运行”为理念,在提高团队开发效率、容易学习及使用、轻量级架构以增加执行速度等方面有着突出的表现。
  • Telecommuting 远程办公

    远程办公是什么

    远程办公是指通过远程控制技术或远程控制软件,对远程电脑进行操作办公,实现非本地办公、在家办公、异地办公、移动办公等远程办公模式。这种技术的关键在于穿透内网和远程控制的安全性。