阅读更多

4顶
0踩

编程语言

原创新闻 Zend Framework 1.7预览版发布

2008-10-17 09:45 by 见习记者 jacktom 评论(5) 有6091人浏览
Zend Framework 1.7

Zend Framework 1.7发布,PHPer们有福了!

它包含了一些重要更新,如下:

1)新的Zend_AMF组件

2)Dojo Toolkit 1.2.0

3)新的ZendX_JQuery组件

4)支持dijit编辑器

5)Zend_Cache的元数据API

6)Google book 搜索 API

7)性能增强

8)国际化i18n增强

9)表单元素的文件上传增强

详情访问:http://framework.zend.com/
4
0
评论 共 5 条 请登录后发表评论
5 楼 lisanping 2008-10-20 11:20
darkhucx 写道

其实PHP你还有别的框架可以选择 个人感觉cakephp还是不错的选择!

我也喜欢cakephp
4 楼 fnet 2008-10-19 09:58
PHP命名空间5.3已经有了
3 楼 fnet 2008-10-19 09:58
zf不是那种类似ROR的快速的开发框架,它是一套大而全的框架,含有几乎所有开发包。如果熟悉pear的人一定可以很快熟悉zf。

如果要想使用类似ROR的那种快速开发框架,请使用cakephp, 国产的fleaphp不错,自带了类似ActiveRecord的持久层解决方案
2 楼 darkhucx 2008-10-17 18:13
其实PHP你还有别的框架可以选择 个人感觉cakephp还是不错的选择!
1 楼 pisla 2008-10-17 15:16
用Zend开放了一个网站,ZF功能是比较全,但使用过程中也遇到几个不爽的地方(可能也是我目前没有好的解决方案,高手请不要拍砖):

1,db功能不是很强大,大部分查询还是要自己写sql语句的。

2,没有模板,用拼.phtml的这种传统方式来组织页面,重复代码较多,不是很DRY,另外action中的参数要传到view(.phtml)比较麻烦,只能用$this->view->xxx = $abc这种方式,而系统设计上要让.phtml比较灵活、尽量多重用,难免参数较多,这时就会出现action中$this->view赋值满天飞的状况,再加上php没有namespace,这时是比较容易产生变量名字冲突的。

3,ZF中url对应的是controller、action、parameters等,如www.xxx.com/luntan/zhuti/l1/100对应controller => luntan、action => zhuti、 参数 l1 => 100,如果那天你觉这个url不是很合适,想换漂亮点的www.xxx.com/bbs/topic/l1/100,那么你就惨了,controller的文件名要改,类名要改,action的名字也要改,所有用到这个url的地方都要改,很是麻烦。

4,命名潜规则,这条是比较让我郁闷的。ZF采用前端控制器模式,根据用户request的url来自动分发到对应module、controller、action处理请求,ZF怎么才能找到对应的action呢,这里就有一套命名潜规则(具体请参考ZF手册),但是这个规则ZF1.6和1.0是不兼容的,我为了使用ZF1.6的新功能实现泛域名,把ZF1.0升到1.6后发现大部分url都成500了,仔细研究发现竟然都是名字惹的祸,没办法只能全改,改controller、改action,改view,改.phtml,改。。。,吐血!

5,PHP调试手段有限。

相中Python的Django了,下一个准备把ZF抛弃。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • uniApp或者vue 与 Android或者ios原生交互

    uniApp或者vue 与 Android或者ios实现原生交互,使用bridge.js可以轻松实现。

  • native event简介

    google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//<script type="text/javascript"

  • 无边框窗口、控件的事件处理之nativeEvent

    窗口控件的无边框取消了窗口事件处理要么重写鼠标事件,要么就是本篇所涉及的方法。个人喜欢nativeEvent处理,各有优缺点。上代码: .h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include class MainWindow : public QLabel {

  • uniapp实现接收EventStream数据流,sse(Server-Sent Events)流式输出的实现

    uniapp实现h5移动端sse的流式输出

  • Qt 5.11.1 nativeEvent 截获windows消息异常大的问题

    第一篇博客先记录个BUG吧!公司刚开始换Qt开发环境,目前使用版本是5.11.1,在使用nativeEvent事件截获windows消息 时,无法捕获WM_MOVE,刚开始以为代码出了问题,换了MinGWD编译器,还是不行,通过debug查看发现这个函数截获到的消息值都特别的大,远远大于了0x0400,后来在网上看到http://www.cnblogs.com/ct6816678/p/924176...

  • 安卓原生为底,uniapp插件引入

    一、安卓项目准备 官方文档 1.SDK引入 官方SDK下载地址 备注:目前官方文档有BUG,点击无法下载,需要右键,跳转链接 2.安卓准备 添加基础依赖库及资源文件 新建安卓项目后,将官方SDK解压得到 |-- uniMPSDK/SDK //uni小程序SDK |-- assets // assets资源文件 |-- Libs //依赖库 |-- res // 资源文件 |-- src //微信

  • C++ NativeEvent使用

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/tpriwwq/article/details/9359791。根据工程需要,对相关方法进行了封装。//提供应用层使用的回调。

  • React 合成事件

    React 合成事件 一、概念介绍 React合成事件是React 模拟原生DOM事件所有能力 的一个事件对象。 根据 W3C规范 来定义合成事件,兼容所有浏览器,拥有与浏览器原声事件相同的接口。 ⚠️ 在React中,所有事件都是合成的,不是原生DOM事件,可以通过 e.nativeEvent 属性获取DOM事件。 const handleClick = (e) =&gt; console.log(e.nativeEvent);; const button = &lt;button onClick={ha

  • react native组件学习(四)

    PullToRefreshViewAndroid学习PullToRefreshViewAndroid是一个视图,可以放置单个可滚动子视图,当子视图的竖直方向偏移(scrollY)为0时,将其下拉可以触发一个onRefresh事件。在学习PullToRefreshViewAndroid组件之前,如果没有一定的基础,建议先阅读前面的文章,因为,这里我在之前学习ScrollView的基础上,添加PullT

  • NativeEvent使用

    微软官方网站: http://msdn.microsoft.com/zh-cn/library/ee2k0a7d(v=VS.80).aspx 根据工程需要,对相关方法进行了封装   ///事件源 [event_source(native)] class __declspec(dllexport)  CEventSource { public:  CEventSource();

  • Event、默认事件、事件冒泡

    这里打印出来的Event对象是 React 封装过的SyntheticEvent,可以看__proto__.constructor。React 标准化了事件对象,因此在不同的浏览器中都会有相同的属性。 React 中事件绑定跟 Vue 中完全不同,Vue中事件绑定和触发的对象为同一元素,React中事件触发的对象为document,绑定元素为当前元素。React的所有事件都会被挂载到document上和DOM事件不同。 Vue 的Event是原生,事件被挂载到当前元素和DOM事件一样 Get Event g

  • wxpython的native event和event

    native system event s are translated to wx.Event instances and then giving to the method wx.EvtHandler.ProcessEvent() for dispatchin out to the proper handler codeIf you use both the id and idw

  • React-Native中事件监听DeviceEventEmitter

    从上面代码中,我们能够看到通过DeviceEventEmitter进行设置了监听,根据React-Native生命周期,当组件加载的时候,我们进行监听,当组件卸载的时候,我们移除监听事件。从代码中,我们能够看出实现了的方法有addListener,但是没有我们在使用中的其他方法,我们对代码进行分析,可以看到,在这里进行引入了下面这两个文件。也就是我们发起请求时message信息的处理方式,在这过程中,当然还有其他几处代码进行了事件处理,在这里就不一一说明了。

  • QT5中处理windows系统消息QAbstractNativeEventFilter

    qt5中对WM_COPYDATA的拦截

  • NativeEventEmitter

    RN端: const calendarManagerEmitter = new NativeEventEmitter(NativeModules.FPreNotification); const subscription = calendarManagerEmitter.addListener( 'aaaaaa', this.onDataReceived.bind(this) ...

  • 前端H5与Android的WebView深度交互的Demo

    之前有写的相关文章,一是太乱了,二是东西没给全,很难理解。应读者要求给出完整的安卓和前端h5交互的Demo: github地址:https://github.com/LiuTangLei/JS2JavaDemo,可以使大家有这方面需求可以快速集成(Ctrl+V) 这个例子中关于注入js代码和保存匿名函数相比与之前的文章有做过修改,提高了注入js代码的稳定性和支持并发调用。 注入代码 由于需要...

Global site tag (gtag.js) - Google Analytics