PRADO v1.7发布

PRADO v1.7发布。PRADO是什么?

PRADO是在PHP5环境下的一个基于事件驱动和基于组件的WEB应用开发框架。使用PRADO开发WEB应用,你主要需要做的工作就是使用已有的组件(原文是"实例化已经定义好的组件",熟悉面向对象编程的开发者可能比较容易理解这句话),设置组件的属性,为控件组件的各种事件编写对应的处理函数,然后把这些组织成一个个的页面。这里是prodo 1.6的中文教程

更新如下:

Changes since v1.6
=============
– solved the incompatibility problem of Javascript used in validators
– enhanced event handler binding (allow binding indirect child component events in template)
– introduced parent-child relationship, the old one renamed to container-containee relationship
– expression, statement tags with context being themselves
– replaced TApplication::getInstance() with pradoGetApplication()
– implemented handler concept in TApplication
– added handler classes: TResourceParser, TResourceLocator, TRequest, TCacheManager, and TErrorHandler
– defined new exception classes
– TComponent added many properties
– introduced module concept and implemented TModule
– implemented application state handling
– added AutoTrim to TTextBox
– removed the application-level data encoding
– instantiateTemplate will init properties
– addChild will also load view state and synchronize life cycle of the new component
– added blog example
– added new components including TFormLabel, TValidatorGroup, TFileUpload, TCheckListBox, TListControl
– added a tutorial for using validators

轻巧的php模板类——SmartTemplate

SmartTemplate:

一个比较轻巧的php模板,执行速度上很有优势,据说执行速度是smatry的8x倍,当然实际使用中不会那么夸张,据本人测试,运行速度至少是pear的IT模板的4倍以上(2000个循环替换)。

下载地址:

http://www.smartphp.net/content/app/download.php

使用注意事项:

为了在同一个脚本中使用多个模板可以这样修改(php4):

281 line

unset($_top); 

to

unset($GLOBALS['_top']);

使用Pear::Pager类的一个问题

今天把公司的服务器从php4升级到php5,问题来了.最严重的是使用Pear::Pager类,报错如下:
Fatal error: Cannot re-assign $this in D:xampphtdocstmptest.php on line 5

看了下Pager类的构造,有如下代码:
$this = ……………..;

看来从php5开始不再支持这种对自身重新实例化的写法了,只好重写了Pager类草草收场

[@more@]

让editplus的Function list显示php5的函数

如果你开始使用php5了,而且正好又是editplus的忠实用户,一定会为editplus的function列表无法正确显示而烦恼.这时候,我们不能怨社会,php5新增的public,private,proctectd,static关键字才是罪恶的根源,function不再是function,而是public function….

当然,这一切不会难倒我们,editplus具有很好的可定制性,以下步骤可以轻松解决这个问题:

  • 打开tools->perferences->Files->Setting&syntax
  • 选择File types->PHP
  • 修改Function pattern
    ^[ t]*function[ t].*([^;]*$ 变成 ^[ t]*(function |public |protected |private |static).*([^;]*$
  • 点ok保存设置

好了,按下ctrl+F11,看看函数窗口,有没有显示出所有的函数呢?

[@more@]

中文pear

php的pear类库真是包罗万象,我时常想.

用过之后,我发觉自己是越来越懒惰了,没心思去写一些模块和function之类的.为什么不呀,人家pear不有现成的么??

为了强化记忆,与时俱进,加入中文pear部分,收罗中文的关于pear的文章.