软件下载站,为您提供安全的软件下载!

当前位置:首页 > 电脑专区 > 其他软件 > 程序源码 > PHP5框架symfony2 2.8

PHP5框架symfony2 2.8

分享到:
symfony2是一个开源的PHP Web框架基于MVC模式的面向对象的框架,而且与匈奴用户在一个Web应用中分离事务控制,服务逻辑和表示层。基于最佳Web开发实践的框架使得目前有许多的著名网站采用此框架进行开发,而该框架的目的也很简单,就是加速Web应用的创建与维护。
symfony2在编程语言智商加入了全新的机制,这些机制能够为许多特定的目标自动提供一些开发模式一个框架结构同样为编码增加了结构,并且促使程序员变出更好、更易读并且具有联系行的代码。如果用户使用PHP开发网站,但是却又觉得代码太过复杂麻烦,那么有了这款symfony2的框架能够让用户的代码更加容易编写和读取,有需要的用户不要错过哦。

symfony2框架特色

简单的模板功能
缓存管理
自定义URLs
搭建了一些基础模块
多语言与I18N支持
采用对象模型与MVC分离
Ajax支持
适用于企业应用开发。

symfony2框架内容

新机制
一个框架结构在编程语言之上加入了新的机制,并且这些机制能够为许多特定的目标自动提供一些开发模式。一个框架结构同样为编码增加了结构,并且促使程序员编出更好、更易读的、有持续性的代码。一个框架结构能让编程变得更加简单,因为它把复杂的程序封装成了简明的陈述。
一个框架的发展通常是以它所使用的语言所延伸出来的。一个php5框架是由一系列的用php5写成的文件组成的。
层次
一个框架将为应用划分出层次。从整体上来说,它可以将应用分为三个层次:
◆表现逻辑层(presentation logic) 用于处理用户与软件之间的交互
◆数据源逻辑层(data source logic) 提供了一个数据库同其他数据提供者的联系通道。
◆范围逻辑层(domain logic),或者叫事务逻辑层(business logic),这是剩余的部分。它包括关于输入的计算、处理表现层中的数据,以及根据从表现层收到的指令分派调度数据源逻辑层。
网络应用框架
网络应用框架致力于促进网络应用的开发(websites,intranets,等等)。建立一个基本的动态网站可以从现有的编程语言中轻易的实现,而PHP的知名就是由于它的简易性被广泛的应用。只需要php,你就可以查询数据库、管理会话(session,cookies)、访问服务器端文件等等。而当你需要构建一个更加复杂的站点,当事务逻辑大大的增加了用于维护的编码量的时候,你就需要一个网络应用的框架出现了。

symfony2优点

无论你是一个php5的专家还是一个在网络应用编程方面的新手都没有问题,影响你决定的最主要因素是你项目的大小。
如果你只是想要开发一个简易的5-10页的站点,只需要有限的访问数据库和几乎不考虑性能、可用性或文档,那么你只需要单独使用PHP。你将不会从网络应用的框架结构的特征中获的太多的益处,使用面向对象或MVC模式只会使你的开发变慢。Symfony运行在一个只有CGI支持的共享主机上将不会高效优异的运行。
另一方面,如果你开发大型的web应用,其中有大量的事务逻辑,那么单独使用PHP是不够的。如果你计划将来维护和扩展你的应用,你需要编写轻量级、易读的和高性能的的代码。如果你想直接使用最友好的用户交互界面(AJAX),你不能只写上数百行的Javascrīpt代码。如果你想享受并且快速的开发,那么单独使用PHP将是令人失望的。介于上述这些原因,symfony非常适合你。
当然,如果你是一个专业的web开发人员,你已经知道了web应用框架的所有优点,并且你需要一个成熟的,具有详细文档和一个大的团体支持。那么不要再犹豫,symfony就是你的解决方案。

symfony2特性

所包涵的观念
它是基于以下的一些观念的:
*尽可能的兼容更多的开发环境
*易于安装和配置
*简单易学
*企业级应用
*规定而非配置,支持回调
*在大多数情况下简洁明了,但是有足够的弹性为复杂情况做准备
*包含大多数网站的共性
*适应大多数 web “最佳实践(best practices)” 和 web “设计模式(design patterns)”
*非常易读的代码、轻松维护
*开源
这些主要的基本概念突出了symfony的框架是使更多的公共任务自动完成,以使开发人员能够完全专注于一项应用任务的特殊细节所在。而在每次一个新的web应用建立的时候不需要重新反复劳动。
兼容的数据库
为了实现这些需求,symfony完全由PHP5写成。它已经彻底的在各种现实项目应用中被测试过,并且实际上已经应用于一些高要求的电子商务网站。它可以同大多数现有的数据库兼容,具体如下:
*MySQL
*PostgreSQL
*Oracle
*MSSQL
*和其他数据库(如果安装了Creole驱动)
结构
symfony的对象模型依赖于以下三个独立的层:
*数据库抽象层(a database abstraction)
*对象关系映射层(an object-relational mapping)
*用于负责前台显示和后台事务的 模型-视图-控制器 模式层(a Model-View-Controller model for the front and back-office)
开发环境和捆绑
另外为了满足企业已有的编码规范和项目管理规则,symfony可以全部重新用YAML配置文件。它是默认提供的几个开发环境,和捆绑:
*原型(prototyping)
*内容管理(content management)
*live configuration changes
*部署(deployment)
*单元测试(unit testing)
*应用测试(applicative testing)
*日志记录(logging)
*调试(debugging)
应用开源项目
Symfony用到了其他一些开源项目的代码:
*Creole, 用于数据库抽象层(for the database abstraction layer)
*Propel, 用于对象关系映射层(for the object-relational mapping layer)
*Mojavi, 用于MVC模型层(for the Model-View-Controller model layer)
web项目的公共特性
web项目的公共特性可以轻易的由symfony自动得到:
*国际化(internationalization)
*模板和助手(templating with helpers)
*表单确认(form validation)
*缓存管理(cache management)
*购物车管理(shopping cart management)
*简洁的路径(smart URLs)
*scaffolding
*发送邮件(email sending)
*分页(Pagination)
*AJAX交互(AJAX interactions)

symfony命令行详解

输入php app/console
就可以进入console控制台
选项:
--help -h            显示本帮助信息
--quiet -q           不输出任何信息
--verbose -v         增加信息的详细程度
--version -V         显示本程序的版本号
--ansi               强制ANSI输出
--no-ansi            禁止ANSI输出
--no-interaction -n  不进行任何交互问题的询问
--shell -s           启动shell
--process-isolation  用shell作为一个单独的进程启动命令
--env -e             环境名
--no-debug           关闭调试模式
可用的命令:
Available commands:
 help                                  显示命令的帮助信息
 list                                  命令列表
assetic
 assetic:dump                          将所有asset保存到文件系统。
assets
 assets:install                        在公用网站目录中安装各Bundle网站的asset。
cache
 cache:clear                           清除缓存
 cache:warmup                          Warms up一个空的缓存
config
 config:debug                          将当前配置扩展
 config:dump-reference                 将默认配置扩展
container
 container:debug                       为应用程序显示当前服务
debug
 debug:config                          将当前配置的扩展
 debug:container                       显示应用程序的当前服务
 debug:event-dispatcher                显示应用程序的配置监听器
 debug:router                          显示应用程序的当前路径
 debug:swiftmailer                     显示应用程序的当前邮件
 debug:translation                     显示消息信息的翻译
 debug:twig                            列表显示Twig的功能,过滤器,全局变量和测试
doctrine
 doctrine:cache:clear-metadata         为一个实体管理器清除所有的元数据缓存。
 doctrine:cache:clear-query            为一个实体管理器清除所有的查询缓存
 doctrine:cache:clear-result           为一个实体管理器清除结果缓存
 doctrine:database:create              创建一个已配置的数据库
 doctrine:database:drop                删除一个已配置的数据库
 doctrine:ensure-production-settings   确认在生产环境下Doctrine的配置是正确的
 doctrine:generate:crud                基于Doctrine实体生成增删改查(CRUD)
 doctrine:generate:entities            从您的映射信息中生成实体类和方法的存根
 doctrine:generate:entity              生成Bundle中的新Doctrine实体
 doctrine:generate:form                基于Doctrine实体生成一个表单类型类
 doctrine:mapping:convert              在支持的格式间转换映射信息
 doctrine:mapping:import               从已存在的数据库中导入映射信息
 doctrine:mapping:info                 显示所有被映射实体的基本信息
 doctrine:query:dql                    直接从命令行中运行任何的DQL
 doctrine:query:sql                    直接从命令行中运行任何的SQL
 doctrine:schema:create                执行(或转储)生成数据库方案所需的SQL语句
 doctrine:schema:drop                  执行(或转储)删除数据库方案所需的SQL语句
 doctrine:schema:update                执行(或转储)更新匹配当前映射元数据数据库方案所需的SQL语句
generate
 generate:bundle                       生成Bundle
 generate:controller                   生成一个控制器
 generate:doctrine:crud                基于Doctrine实体生成CRUD
 generate:doctrine:entities            从您的映射信息中生成实体类和方法的存根
 generate:doctrine:entity              在Bundle中生成一个Doctrine的新实体
 generate:doctrine:form                基于Doctrine实体生成一个表单类型类
init
 init:acl                              在数据库中安装ACL数据表
orm
 orm:convert:mapping                   转换支持格式之间的映射信息
router
 router:debug                          为应用程序显示当前路由
 router:dump-apache                    将所有路由转储为Apache重写规则
security
 security:check                        检查你的项目依赖项的安全问题
server
 server:run                            运行PHP内置的Web服务器
 server:start                          在后台开始PHP内置的Web服务器
 server:status                         输出给定地址的内置Web服务器的状态
 server:stop                           从服务器的启动命令停止PHP内置的Web服务器
swiftmailer
 swiftmailer:debug                     显示应用程序的当前邮件
 swiftmailer:email:send                简单的邮件发送
 swiftmailer:spool:send                从池中发送电子邮件
translation
 translation:debug                     显示消息信息的翻译
 translation:update                    更新翻译文件
twig
 twig:debug                            列表显示Twig的功能,过滤器,全局变量和测试
 twig:lint                             lint一个模板输出遇到的错误
yaml
 yaml:lint                             lint一个文件输出遇到的错误
展开更多

软件截图

扫描二维码,手机下载APP

软件下载站本地下载

相关文章