版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.csdn.net/mayongzhan - 马永占,myz,mayongzhan

其实zend做的只是把一个超级牛的专业phper的全部知识打包成一个程序包,提供给大家使用.当然这个phper的习惯不一定符合你的需求,只拿需要的内容吧. 这些都看过之后,可以自己挑部分源码出来,搞个MyZ专用zend framework或者是马永占专用zend framework…或者专门做MVC的zend framework.

1 Zend_Acl Access control list 实现角色对资源的权限模型.只是个概念,我正在用的权限方式基本上跟acl差不多,acl在权限方面并没有什么创新的.而且需要去扩展acl要写更大量的代码.不如自己写.

2 Zend_Auth 验证,只负责验证,传说中有HTTP认证和支持openID.对我来说只是传说…验证就是去对比一下是或否,然后分别操作.

3 Zend_Cache 缓存.这个比较有用,最起码教给我们一种最简单的缓存方法,一对if else,有缓存,读缓存,没缓存读数据库存缓存.zend_cache有三大特色,也就是让你用zend_cache不用其他的缓存的三个优势.1标识缓存记录唯一性,省的自己做了.2生命周期,也省的自己做了.3条件执行…其实zend_cache最值得我们学习的是分开了前端和后端,这两个分别负责不同的事情,后端负责存储,前端负责参数等等.关于缓存,基本上是系统有,程序有,服务器有,连smarty都有…

4 Zend_Config 传说中的操作配置,这个配置的操作在PHP中已经有支持,做的也不错. Config中最好的是可以读xml格式…其实能读什么和xml的配置是什么格式都是zend规定的.我看了他们最常用的DB的配置.那种结构不是普通的配置文件.更多的层次.更多的规则.也许会更清晰吧.

5 Zend_Console_Getopt 帮助命令行程序解析它们的选项和参数.这句是抄来了.确实和现实的开发没什么关系,有人用过吗?听说可以把这句(rm * -fr)解释出来,但是解释出来后干什么???解释它做什么???

6 Zend_Controller 这个是最关键部分之一,zend最核心内容之一,最让PHPER感到zend可用的部分之一,跨时代的php产物之一.内容太多了.需要注意:MaYongZhanController::blogMmmYyyAction()在URL中是这样的ma-yong-zhan/blog-mmm-yyy ,或者中间是用 . 分隔开.所以建议还是写成这样:MayongzhanController::blogmmmyyyAction().当然还有很多很多很多的地方需要注意.zend的规范实在是多了些.

7 Zend_Currency 这个是处理钱的问题的,就是根据不同的地区,使用不同的货币格式.$1000 or ¥1000.

8 Zend_Date 典型的西方式的日期解决方案,就是关于日期型数据的操作.

9 Zend_DB 大多数项目所必须的,既然结合了zend来开发项目,就要看一看zend_db提供的类到底比我们的好在哪里.Zend_DB使用的是pdo,所以一定要打开这个扩展…费话. 仅次于Controller的zend第二大被经常使用的类. 包括各种数据库的操作封装,连select都有专门的使用方法.再也不用写完整的sql语句了?不好吧.反正我用到的只是其中一少部分.包括连接.查询.特别的插入,更新,删除操作.

10 Zend_Debug 这个用于调试,简单的调试.相当于echo $some;当然它会输出更详细的信息.

11 Zend_Exception 异常处理,Zend使用过程中的异常.有兴趣拿DB测试一下,自己抛着玩.

12 Zend_Feed Web应用吧,可以试一下我的Feed: http://Blog.csdn.net/mayongzhan/rss.aspx Feed中最需要看的就是rss和atom,感觉atom更现代一点,最少是看上去比rss更好一些.

13 Zend_Filter 各种乱七八糟的过滤.需要的时候去查一下,也许你会发现php的函数使用起来会比这个东西方便.只是也许.

14 Zend_Form 这个东西似乎是为标准程序员准备的,所谓标准程序员就是一点也不考虑界面,当然标准程序员一定不是一个好的web程序员.没有web程序员不懂html的.呵呵.这个意义对我来说不大,对其他人我就不知道了.用来生成一个html表单.

15 Zend_Gdata Gdata是Google Data的缩写,当然也就是google的东西,但是不包括著名的gmail,search,map.这个只是google data API.对google的API感兴趣的可以研究一下.俺不是GOOGLE迷…也不是baidu迷.

16 Zend_Http 这部分是我目前主要研究php的方向.当然zend做了很多有意义的事情.zend_http很像php的curl,感觉没有curl强大,不过curl的操作有点不透明,使用起来感觉对了都不知道怎么对的.这个东西还需要改进啊.比如可以在这个东西的基础上开发一个检测http的类.呵呵.我比较喜欢.

17 Zend_InfoCard 传说中的个人身份认证信息.只是传说中的,应用很少的.

18 Zend_Json JavaScript Object Notation,这个东西负责对json的操作,其实就是编码解码…对json感兴趣的研究一下.我是没什么兴趣…

19 Zend_Layout 一个和view有关的,实现了二级视图的东西.这个我更习惯于使用zend controller或者shtml来解决.方法不同.

20 Zend_Loader 动态加载,当然是和静态的include做对比.可以根据需要加载.当然这是一个模糊的概念,不过确实省去了不少的工作.很不错的代码.效率?呵呵.

21 Zend_Locale 国际化?本地化?就当成是国际化的东西吧.谁想知道马永占翻译成意大利语是什么?反正我是用不到.

22 Zend_Log 通用的log记录.很像操作系统内的log也很像apache里的log.有点像我写的log…Zend_log里面最好的两个概念:1分级error级notice级等等,zend分了8级,2保存log,zend可以把log放到输出,数据库,文件当中.当然我们最常用的就是输出到文件.zend_log给了我不少的启发.用于改进我的MyZ_log.很有用的东西.

23 Zend_Mail 目前我在用的是一个php写的smtpMail类…当然zend也是php写的…如果你正好要用mail,或者觉得原来的mail函数不够好的话,建议看看zend_mail.

24 Zend_Measure 用于转换,最简单的例子是把英尺转成公尺.对于我们这样的小庙…用不上啊…

25 Zend_Memory 内存管理,恩.这个来头不小.程序级的内存管理.不了解…底层程序员也许会关心这个程序级的内存管理吧.

26 Zend_Mime 多用于mail函数的mime,当然也可以自己使用.

27 Zend_OpenID OpenID啊.很火的东西,目的是整合世界上所有的帐号,不过现实的情况是每个厂商也不愿意被整合.都想着怎么整合别人.所以这个东西发展的不是很好.

28 Zend_Pdf Pdf一种文件格式,是adobe的,就是电子书最经常用的格式.zend被宣传说支持pdf操作,我想这东西有必要宣传吗?难道是zend的主要功能?太小题大做了吧.

29 Zend_Registry 将一个东西(变量,数组,类…)注册到全局应用当中,就是write once use anywhere ,当然这个anywhere是指你的整个项目.开销是不是大了些?但是如果你经常用的话,这样做会很有帮助.免去了每次使用都要new class.

30 Zend_Rest 这个来头也不小.zend里面到处都是经典的程序.rest类似于xmlrpc和soap,是一种目前最新的web service,使用似乎没有xmlrpc多.也没有soap多.传说中我还有一份rest之父的论文…传说中的zend

31 Zend_Search_Lucence 基于文本的搜索引擎,当然是改编于那个Lucence,现在开始怀疑,zend是不是象称霸php.怎么什么都写…没试过.

32 Zend_Server 为其他zend的类提供支持.是一个基础类.当然也可以自己拿出来用.也许你能开发出来比rest更优秀的web service靠这个东西…

33 Zend_Service 网络上的除了google的各种服务,为啥要把google单拿出来呢?不好实现?还是google太强大了…这些我是一个也没用过…会用到的.当初在csdn看到一个牛人用delicious在自己的csdn博客上加上了相关文章…(我多次请求csdn,加上相关文章,结果石沉大海…这老兄真的很猛.csdn给不了我们的.我们自己做.没有枪没有炮,我们自己造.)

34 Zend_Session 这个是个好东西,提供存储session和提供session的API,当然这个是为了跨域名,跨服务器准备的.当然也能代替传统的session_start()…如果你想这么做的话…

35 Zend_Translate 解决了语言问题...最另我高兴的是看到了zend使用.mo文件.这个mo文件是在drupal里的语言包.zend做的不错.

36 Zend_Uri 验证url的类,这个也是基础,是被其他zend成员调用的.也能自己用.

37 Zend_Validate 校验器,前面有个filter是过滤的.这个是验证的.本质都是一样的.是判断是否符合规则,然后validate是返回对错.filter是直接把不符合的地方去掉.当然我们大家一定都有自己的过滤和校验器.好好的参考一下zend ,然后进行修改吧.

38 Zend_Version 这个是zend里源码最好读的一部分…是最简单的.建议无论是否想学习zend都去看一下…这样在和被人吹牛的时候就能这么说:zend啊.前几年我看过它的源码,写的不错…

39 Zend_View Zend MVC当中一员.也能算上是五虎上将之一.不过在我这却没有被使用…我使用了smarty作为替换…感觉有点对不住zend,zend这么多东西,我只用了几个…哎…不过zend_view的helper很不错.可以替代手写,生成各种需要在view层显示的代码.

40 Zend_XmlRpc Web service,xmlrpc是最简单的一种.当然zend的这的类也是完成80/20使命.我想用的人很少吧.

Zend也挺符合2/8理论的,20%的程序被经常使用.剩下的用的很少.但是作为一个完整的framework,zend是经典的

zend framework分析总结[转]的更多相关文章

  1. Zend Framework 留言本实战(转)

    一.环境搭建和ZF安装              *[注]本节内容大部分来至Zend Framework官方手册       1.1 Zend Framework下载 Zend Framework 使 ...

  2. Zend Framework MVC的结构

    The Zend Framework MVC Architecture 一.概述: In this chapter, we will cover the following topics:1. Zen ...

  3. Zend Framework 1 - Quick Start

    创建 Zend 项目 要创建 Zend 项目,首先要下载并解压 Zend Framework. 安装 Zend Framework 下载最新的 Zend Framework 1.12.20 源码包,( ...

  4. Ubuntu14.0下安装Zend Framework 2

    Ubuntu14.0下安装Zend Framework 2为了安装这个东西,忙活了快一天了,参考中文博客一直没有安装成功,有些博客的时间也是已经很早了,后来google看英文版的才安装成功,这里记录一 ...

  5. 搭建PHP官方框架zend framework 2(LINUX)

    在五花八门的语言里,PHP作为我第一个觉得欣赏的理由,就是它的简单和快捷,因为它封装了许多的常用函数.PHP作为网站中一种算作比较流行的语言,也产生各种优秀的框架.我所接触过的有zend framew ...

  6. 使用 Web Tracing Framework 分析富 JS 应用的性能

    来自谷歌的 Web Tracing Framework 包含一组工具和脚本,用于 JavaScript 相关代码的性能分析.它是重 JavaScript 应用程序的理想选择,而 JavaScript ...

  7. 高性能Web框架Zend Framework

    Zend Framework (ZF)是用 PHP 5.3及更高版本来开发 Web 程序和服务的开源框架.ZF用100% 面向对象编码实现. ZF的组件结构独一无二,每个组件几乎不依靠其他组件.这样的 ...

  8. Zend Framework 入门(4)—页面布局

    Zend Framework 的页面布局模块——Zend_Layout——既可以跟 MVC 一起使用,也可以单独使用.本文只讨论与 MVC 一起使用的情况. 1. 布局脚本 在 application ...

  9. Zend Framework 入门(1)—快速上手

    1. 安装 从 Zend Framework 的网页上下载最新版本.解压后,把整个目录拷贝到一个理想的地方,比如:/php/library/Zend. 打开 php.ini 文件,确认包含 Zend ...

随机推荐

  1. Advanced DataStream API Low-latency Event Time Join

    http://training.data-artisans.com/exercises/eventTimeJoin.html

  2. Redis高可用架构—Keepalive+VIP

    最近整理一下Redis高可用架构的文档,也准备分享出来,虽然这些架构也不是很复杂.Redis的高可用方案目前主要尝试过5种方式,其中2种方式已经在线上使用. 1)Redis Master-Slave ...

  3. [PY3]——环境配置(1)——pyenv | pip | ipython | jupyter(含安装pyenv环境shell脚本)

    1.关于pyenv (1)pyenv是一个开源的.shell脚本编写的工具:Simple Python version management (2)为什么使用pyenv:当多个项目同时在开发与维护时, ...

  4. [MyBean说明书]-如何进行最简单的DEMO

    MyBean是轻量级的.绿色的框架,不需要安装任何的组件和携带任何的其他文件,前 期步骤已经相当精简了,仔细阅读完下面简单的五个步骤,就可以编写基于MyBean的插件: 1.加入Delphi的搜索路径 ...

  5. 网络广告CPS/CPC/CPV/CPM/CPA分别是什么意思

    CPA:注册广告(一般按用户来计算)CPC:点击广告(一般按一千个ip计算)CPS:消费广告(用户通过你的网站中投放的广告,达成消费,有提成)CPM:展示广告(展示广告,一般的视频比较多)CPV:按照 ...

  6. 如何解压POSIX tar archive文件

    下载了一个xxx.gz的文件,使用x xxx.gz(zsh的x插件,十分之好用,再也不用担心tar后面该加哪些参数了)的命令解压,然后出现了一个文件,本以为解压后是一个文件夹:然后一脸蒙逼~ 突然又想 ...

  7. spring boot guava cache 缓存学习

    http://blog.csdn.net/hy245120020/article/details/78065676 ****************************************** ...

  8. LeetCode: Sum Root to Leaf Numbers 解题报告

    Sum Root to Leaf Numbers Given a binary tree containing digits from 0-9 only, each root-to-leaf path ...

  9. Orcale分析函数OVER(PARTITION BY... ORDER BY...)的讲解

    顾名思义,PARTITION 中文是分割的意思,ORDER 是排序的意思,所以翻译一下就是先把一组数据按照制定的字段进行分割成各种组,然后组内按照某个字段排序. 以实际案例来说明这个函数的使用, 首先 ...

  10. bzoj1103【POI2007】大都市meg

    1103: [POI2007]大都市meg Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1544  Solved: 776 [Submit][St ...