3.5.3.3 Callbacks

CakePHP提供了一系列的回调函数可以在控制器的行为(action)执行前后进行特别的处理。

beforeFilter()

该函数在控制器中的所有行为(action)执行之前被自动调用。在该函数中进行session或者用户权限的处理是非常方便的。

beforeRender()

该函数在控制器中行为(action)执行之后,向视图文件输出渲染之前被调用。该函数被使用得并不多,不过当你想在手动进行render()并在之前做点什么的话就派上用场了。

afterFilter()

该函数在每个控制器行为(action)之后被调用。

afterRender()

该函数在每个行为(action)被渲染输出之后调用。

CakePHP同样有与脚手架(scaffolding)关联的回调函数。

_beforeScaffold($method)

$method: 被调用的行为方法名。比如index, edit等。

_afterScaffoldSave($method)

$method: 被调用的行为方法名。可能是edit或者update。

_afterScaffoldSaveError($method)

$method: 被调用的行为方法名。可能是edit或者update。

_scaffoldError($method)

$method: 被调用的行为方法名。比如index, edit等。