fbpx
维基百科

Zend framework

Zend Framework(ZF)是一种开源的, 面向对象的WEB应用程序开发框架,在PHP7下运行,使用MVC软件架构,授權模式採用BSD许可证[4]

Zend Framework
開發者Zend Technologies
当前版本
  • 3.0.0 (2016年6月28日;穩定版本)[1][2]
  • 2.3.0 (2024年1月8日;穩定版本)[3]
源代码库
  • github.com/laminas/laminas-mvc-skeleton
操作系统跨平台
类型框架
许可协议BSD许可证
网站framework.zend.com

当前版本 编辑

Zend Framework当前版本为3.0系列。

历史 编辑

Zend Framework的设计构思形成于2005年,由Ruby on RailsSpring Framework的设计思路发展而来的。2005年10月,第一次Zend年会上,Zend公司宣布了ZF的开发计划。[5]

2007年7月1日,Zend Framework 1.0发布。[6]

2012年9月5日,Zend Framework 2.0正式版发布。[7]

2016年6月28日 , Zend Framework 3.0正式發布。[8]

许可证 编辑

Zend Framework框架得到了开放源代码促进会(OSI)认可,以及BSD许可证,所有原码贡献者必须与Apache软件基金会签署一份贡献者许可协议(Contributor License Agreement,CLA),这一许可证和协议都是为了防止ZF在商业使用方面的知识产权问题。[9].

发起人和支持者 编辑

Zend Framework的发起人是Zend Technologies公司的Andi Gutmans和Zeev Suraski,PHP底层的解析引擎的重构者。[10]技术合作伙伴则包括IBM[11]Google[12], Microsoft[13], Adobe Systems[14],和StrikeIron[15].

配置要求 编辑

最新版本的Zend Framework要求PHP 5.2.4或是更高版本。Zend Framework 1.7.0前的版本要求PHP 5.1.4或是更高版本。官方提供的ZF手册推荐使用PHP 5.2.3或是更高版本,因为新版本在编译方面有许多重大安全和性能方面的改善和提高。安装PHPUnit3.0或更高版本之后才能以PHP单元测试方式运行,许多组件同样要求PHP扩展。[16]

特征 编辑

Zend Framework特征包括[17]

  • 所有组件完全面向对象,符合E STRICT错误报表。
  • 松耦合(Use-at-will)设计可以让开发者独立使用组件,每个组件几乎不依赖其他组件。
  • 默认提供了强壮而高效的MVC实现和基于PHP的模板。
  • 經由PDO,支持多种数据库,如MySQLOracleIBM DB2Microsoft SQL ServerPostgreSQLSQLite和Informix Dynamic Server。
  • 支持多种邮件收发系统,如mbox,Maildir,POP3IMAP4
  • 灵活的缓存机制,支持多种缓存方式,可以将缓存写入内存或是文件系统

创建Zend Framework应用 编辑

创建一个Zend Framework应用程序可以通过zf tool工具,以命令行的方式来搭建一个典型的应用结构,然后在此基础上进行开发,这种自动化创建应用结构的方法通常也被称为“脚手架”功能。Zend Framework曾被普遍认为学习曲线较高,上手比较难,但zf tool"脚手架"大大简化了应用的创建和初始配置过程,如果配合上安装好的Zend Studio环境,使框架可以在短短数分钟之内就可以完成配置运行起来。

代码、文件的测试标准 编辑

所有贡献的代码,在加入到发行版本之前,都必须先通过ZF公司制订的严格的测试标准。所有代码必须符合ZF代码标准,单元测试达到80%以上的的测试覆盖率。[18]

争议 编辑

Zend Framework的早期版本,類別的成員函數定義與它上面寫的註解在資料型態根本對不起來,導致在Eclipse IDE for PHP Developers會瘋狂出現一堆【cannot be resolved to a type】的錯誤訊息,需手動進專案的設定把【Undefined type】改為警告。

和其他大型Web框架类似,Zend Framework有一个非常庞大的前端控制器(Front Controller)。但由于PHP运行时环境的特殊性(每次请求都是独立的上下文),这个前端控制器不得不在每次请求被重新初始化一次。这带来了非常大的性能开销,被认为是Zend Framework的性能瓶颈所在。同时由于前端控制器模式和PHP的格格不入,许多人甚至认为PHP不适宜使用大型框架。类似的还有Zend_Db获取数据库中表的结构信息,也是每次请求都重复进行的操作。事实上,Zend_Db是可以缓存表结构的(通过Memcached、Apc一类的外部缓存器)。但前端控制器设计的复杂确实不是缓存可以解决的。这并不说明Zend Framework设计有问题,而是说明并不是所有的项目、应用都适合使用Zend Framework,要靠项目决策者针对自身情况权衡。

模仿 编辑

Zend Framework本身的结构很大程度的模仿了Ruby on Rails,但又做了足够的改动使其适应PHP的特点。所以很多PHP框架都或多或少的借鉴、参考了Zend Framework。由于不满Zend Framework中前端控制器重复初始化带来的不必要开销,甚至有开发者用C/C++ 写PHP扩展的方式,重新实现了Zend Framework,使前端控制器只需要全局初始化一次(Yaf Framework (页面存档备份,存于互联网档案馆)及Phalcon PHP (页面存档备份,存于互联网档案馆))。

参看 编辑

参考资料 编辑

  1. ^ https://github.com/zendframework/zendframework/releases/tag/release-3.0.0; 出版日期: 2016年6月28日.
  2. ^ https://framework.zend.com/blog/2016-06-28-zend-framework-3.html; 出版日期: 2016年6月28日.
  3. ^ Release 2.3.0. 2024年1月8日 [2024年1月19日]. 
  4. ^ . ZF Programmer's Reference Guide. [2009-02-12]. (原始内容存档于2009-02-11). 
  5. ^ Morgan, Oonagh. . Zend Technologies. 2005-10-19 [2008-07-14]. (原始内容存档于2009-01-01). 
  6. ^ Gutmans, Andi. Zend Framework 1.0 Released!. Andi on Web & IT. 2007-07-01 [2008-07-14]. (原始内容于2021-04-17). 
  7. ^ Zend Framework 2.0.0 STABLE Released!. Zend Technologies. 2012-09-05 [2012-09-05]. (原始内容于2021-07-21). 
  8. ^ Company, Zend, a Rogue Wave. Zend Framework - Blog - Zend Framework 3 Released!. framework.zend.com. [2016-10-12]. (原始内容于2022-01-24). 
  9. ^ Gutmans, Andi. Zend Framework(post is too long so make sure to grab coffee). Andi on Web & IT. 2005-10-27 [2009-02-11]. (原始内容于2011-07-08). 
  10. ^ History of PHP and related projects. The PHP Group. [2009-02-11]. (原始内容于2008-07-08). 
  11. ^ LaMonica, Martin. IBM backs open-source Web software. cnet.com. 2005-02-25 [2009-02-11]. 
  12. ^ Kernel, Sean Michael. Google Data Joins PHP Zend Framework. internetnews.com. 2006-12-20 [2009-02-11]. (原始内容于2021-06-12). 
  13. ^ Krill, Paul. . infoworld.com. 2006-10-31 [2009-02-11]. (原始内容存档于2009-03-10). 
  14. ^ Potter, Mike. Adobe Contributing AMF Support to Zend Framework. The Official Flex Team Blog. 2008-07-31 [2009-02-11]. (原始内容于2009-02-07). 
  15. ^ StrikeIron Featured Partners. [2009-02-11]. (原始内容于2009-04-11). 
  16. ^ . ZF Programmer's Reference Guide. [2009-02-12]. (原始内容存档于2009-02-14). 
  17. ^ . [2009-02-11]. (原始内容存档于2009-02-11). 
  18. ^ . 2006-07-01 [2008-07-14]. (原始内容存档于2008-05-18). 

外部链接 编辑

指南 编辑

  • Rob Allen's popular tutorial (页面存档备份,存于互联网档案馆
  • Examples notes
  • Zend Framework手册

zend, framework, 此條目的语调或风格或許不合百科全書, 2021年11月24日, 請根據指南協助改善这篇条目, 並在讨论页討論問題所在, 加以改善, zend, framework, 是一种开源的, 面向对象的web应用程序开发框架, 在php7下运行, 使用mvc软件架构, 授權模式採用bsd许可证, zend, framework開發者zend, technologies当前版本3, 2016年6月28日, 穩定版本, 2024年1月8日, 穩定版本, 源代码库github, laminas, . 此條目的语调或风格或許不合百科全書 2021年11月24日 請根據指南協助改善这篇条目 並在讨论页討論問題所在 加以改善 Zend Framework ZF 是一种开源的 面向对象的WEB应用程序开发框架 在PHP7下运行 使用MVC软件架构 授權模式採用BSD许可证 4 Zend Framework開發者Zend Technologies当前版本3 0 0 2016年6月28日 穩定版本 1 2 2 3 0 2024年1月8日 穩定版本 3 源代码库github wbr com wbr laminas wbr laminas mvc skeleton操作系统跨平台类型框架许可协议BSD许可证网站framework zend com 目录 1 当前版本 2 历史 3 许可证 4 发起人和支持者 5 配置要求 6 特征 7 创建Zend Framework应用 8 代码 文件的测试标准 9 争议 10 模仿 11 参看 12 参考资料 13 外部链接 13 1 指南当前版本 编辑Zend Framework当前版本为3 0系列 历史 编辑Zend Framework的设计构思形成于2005年 由Ruby on Rails和Spring Framework的设计思路发展而来的 2005年10月 第一次Zend年会上 Zend公司宣布了ZF的开发计划 5 2007年7月1日 Zend Framework 1 0发布 6 2012年9月5日 Zend Framework 2 0正式版发布 7 2016年6月28日 Zend Framework 3 0正式發布 8 许可证 编辑Zend Framework框架得到了开放源代码促进会 OSI 认可 以及BSD许可证 所有原码贡献者必须与Apache软件基金会签署一份贡献者许可协议 Contributor License Agreement CLA 这一许可证和协议都是为了防止ZF在商业使用方面的知识产权问题 9 发起人和支持者 编辑Zend Framework的发起人是Zend Technologies公司的Andi Gutmans和Zeev Suraski PHP底层的解析引擎的重构者 10 技术合作伙伴则包括IBM 11 Google 12 Microsoft 13 Adobe Systems 14 和StrikeIron 15 配置要求 编辑最新版本的Zend Framework要求PHP 5 2 4或是更高版本 Zend Framework 1 7 0前的版本要求PHP 5 1 4或是更高版本 官方提供的ZF手册推荐使用PHP 5 2 3或是更高版本 因为新版本在编译方面有许多重大安全和性能方面的改善和提高 安装PHPUnit3 0或更高版本之后才能以PHP单元测试方式运行 许多组件同样要求PHP扩展 16 特征 编辑Zend Framework特征包括 17 所有组件完全面向对象 符合E STRICT错误报表 松耦合 Use at will 设计可以让开发者独立使用组件 每个组件几乎不依赖其他组件 默认提供了强壮而高效的MVC实现和基于PHP的模板 經由PDO 支持多种数据库 如MySQL Oracle IBM DB2 Microsoft SQL Server PostgreSQL SQLite和Informix Dynamic Server 支持多种邮件收发系统 如mbox Maildir POP3和IMAP4 灵活的缓存机制 支持多种缓存方式 可以将缓存写入内存或是文件系统 创建Zend Framework应用 编辑创建一个Zend Framework应用程序可以通过zf tool工具 以命令行的方式来搭建一个典型的应用结构 然后在此基础上进行开发 这种自动化创建应用结构的方法通常也被称为 脚手架 功能 Zend Framework曾被普遍认为学习曲线较高 上手比较难 但zf tool 脚手架 大大简化了应用的创建和初始配置过程 如果配合上安装好的Zend Studio环境 使框架可以在短短数分钟之内就可以完成配置运行起来 代码 文件的测试标准 编辑所有贡献的代码 在加入到发行版本之前 都必须先通过ZF公司制订的严格的测试标准 所有代码必须符合ZF代码标准 单元测试达到80 以上的的测试覆盖率 18 争议 编辑Zend Framework的早期版本 類別的成員函數定義與它上面寫的註解在資料型態根本對不起來 導致在Eclipse IDE for PHP Developers會瘋狂出現一堆 cannot be resolved to a type 的錯誤訊息 需手動進專案的設定把 Undefined type 改為警告 和其他大型Web框架类似 Zend Framework有一个非常庞大的前端控制器 Front Controller 但由于PHP运行时环境的特殊性 每次请求都是独立的上下文 这个前端控制器不得不在每次请求被重新初始化一次 这带来了非常大的性能开销 被认为是Zend Framework的性能瓶颈所在 同时由于前端控制器模式和PHP的格格不入 许多人甚至认为PHP不适宜使用大型框架 类似的还有Zend Db获取数据库中表的结构信息 也是每次请求都重复进行的操作 事实上 Zend Db是可以缓存表结构的 通过Memcached Apc一类的外部缓存器 但前端控制器设计的复杂确实不是缓存可以解决的 这并不说明Zend Framework设计有问题 而是说明并不是所有的项目 应用都适合使用Zend Framework 要靠项目决策者针对自身情况权衡 模仿 编辑Zend Framework本身的结构很大程度的模仿了Ruby on Rails 但又做了足够的改动使其适应PHP的特点 所以很多PHP框架都或多或少的借鉴 参考了Zend Framework 由于不满Zend Framework中前端控制器重复初始化带来的不必要开销 甚至有开发者用C C 写PHP扩展的方式 重新实现了Zend Framework 使前端控制器只需要全局初始化一次 Yaf Framework 页面存档备份 存于互联网档案馆 及Phalcon PHP 页面存档备份 存于互联网档案馆 参看 编辑 nbsp Free software主题 框架 PHP BSD许可证参考资料 编辑 https github com zendframework zendframework releases tag release 3 0 0 出版日期 2016年6月28日 https framework zend com blog 2016 06 28 zend framework 3 html 出版日期 2016年6月28日 Release 2 3 0 2024年1月8日 2024年1月19日 Introduction to Zend Framework ZF Programmer s Reference Guide 2009 02 12 原始内容存档于2009 02 11 Morgan Oonagh Zend Announces Industry wide PHP Collaboration Project at its Inaugural PHP Conference Zend Technologies 2005 10 19 2008 07 14 原始内容存档于2009 01 01 Gutmans Andi Zend Framework 1 0 Released Andi on Web amp IT 2007 07 01 2008 07 14 原始内容存档于2021 04 17 Zend Framework 2 0 0 STABLE Released Zend Technologies 2012 09 05 2012 09 05 原始内容存档于2021 07 21 Company Zend a Rogue Wave Zend Framework Blog Zend Framework 3 Released framework zend com 2016 10 12 原始内容存档于2022 01 24 Gutmans Andi Zend Framework post is too long so make sure to grab coffee Andi on Web amp IT 2005 10 27 2009 02 11 原始内容存档于2011 07 08 History of PHP and related projects The PHP Group 2009 02 11 原始内容存档于2008 07 08 LaMonica Martin IBM backs open source Web software cnet com 2005 02 25 2009 02 11 Kernel Sean Michael Google Data Joins PHP Zend Framework internetnews com 2006 12 20 2009 02 11 原始内容存档于2021 06 12 Krill Paul Microsoft Zend boost PHP for Windows infoworld com 2006 10 31 2009 02 11 原始内容存档于2009 03 10 Potter Mike Adobe Contributing AMF Support to Zend Framework The Official Flex Team Blog 2008 07 31 2009 02 11 原始内容存档于2009 02 07 StrikeIron Featured Partners 2009 02 11 原始内容存档于2009 04 11 Zend Framework Requirements ZF Programmer s Reference Guide 2009 02 12 原始内容存档于2009 02 14 About Zend Framework 2009 02 11 原始内容存档于2009 02 11 Zend Framework Contributor Guide 2006 07 01 2008 07 14 原始内容存档于2008 05 18 外部链接 编辑Official Website 页面存档备份 存于互联网档案馆 Zend Framework的例子 ZfEx 页面存档备份 存于互联网档案馆 Zend Framework 2 0资料汇总指南 编辑 Rob Allen s popular tutorial 页面存档备份 存于互联网档案馆 Lyndon Baptiste s tutorial Official ZF Quickstart Examples notes Zend Framework手册 取自 https zh wikipedia org w index php title Zend framework amp oldid 78942439, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。