包 | system.caching.dependencies |
---|---|
继承 | class CExpressionDependency » CCacheDependency » CComponent |
实现 | ICacheDependency |
源自 | 1.0 |
版本 | $Id: CExpressionDependency.PHP 3515 2011-12-28 12:29:24Z mDOMba $ |
源码 |
CExpressionDependency指基于PHP表达式结果的依赖项。
CExpressionDependency执行基于PHPexpression 结果的依赖项检查。 当且仅当执行结果与往缓存中存储数据时 计算的结果一致时认为依赖项未改变。
CExpressionDependency执行基于PHPexpression 结果的依赖项检查。 当且仅当执行结果与往缓存中存储数据时 计算的结果一致时认为依赖项未改变。
公共属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
dependentData | mixed | 用以决定依赖项是否被改变的数据。 这些数据是可用的在evaLuateDependency被调用后。 | CCacheDependency |
expression | string | PHP表达式,它的结果用以决定依赖项。 该表达式也可以是一个有效的PHP回调, 包括类方法名(array(ClassName/Object, MethodName)), 或者匿名函数(PHP 5. | CExpressionDependency |
hasChanged | boolean | 依赖项是否被改变。 | CCacheDependency |
公共方法
方法 | 描述 | 定义在 |
---|---|---|
__call() | 如果类中没有调的方法名,则调用这个方法。 | CComponent |
__construct() | 构造器。 | CExpressionDependency |
__get() | 返回一个属性值、一个事件处理程序列表或一个行为名称。 | CComponent |
__isset() | 检查一个属性是否为null。 | CComponent |
__set() | 设置一个组件的属性值。 | CComponent |
__unset() | 设置一个组件的属性为null。 | CComponent |
asa() | 返回这个名字的行为对象。 | CComponent |
attachBehavior() | 附加一个行为到组件。 | CComponent |
attachBehaviors() | 附加一个行为列表到组件。 | CComponent |
attachEventHandler() | 为事件附加一个事件处理程序。 | CComponent |
canGetProperty() | 确定属性是否可读。 | CComponent |
canSetProperty() | 确定属性是否可写。 | CComponent |
detachBehavior() | 从组件中分离一个行为。 | CComponent |
detachBehaviors() | 从组件中分离所有行为。 | CComponent |
detachEventHandler() | 分离一个存在的事件处理程序。 | CComponent |
disableBehavior() | 禁用一个附加行为。 | CComponent |
disableBehaviors() | 禁用组件附加的所有行为。 | CComponent |
enableBehavior() | 启用一个附加行为。 | CComponent |
enableBehaviors() | 启用组件附加的所有行为。 | CComponent |
evaluateDependency() | 根据依赖关系来生存和保存数据以计算依赖项。 | CCacheDependency |
evaluateExpression() | 计算一个PHP表达式,或根据组件上下文执行回调。 | CComponent |
getDependentData() | 返回用以决定依赖项是否被改变的数据。 这些数据是可用的在evaluateDependency被调用后。 | CCacheDependency |
getEventHandlers() | 返回一个事件的附加处理程序列表。 | CComponent |
getHasChanged() | 返回依赖项是否被改变。 | CCacheDependency |
hasEvent() | 确定一个事件是否定义。 | CComponent |
hasEventHandler() | 检查事件是否有附加的处理程序。 | CComponent |
hasProperty() | 确定属性是否被定义。 | CComponent |
raiseEvent() | 发起一个事件。 | CComponent |
受保护方法
方法 | 描述 | 定义在 |
---|---|---|
generateDependentData() | 生成决定依赖项是否被改变需要的数据。 | CExpressionDependency |
属性详细
expression
属性
public string $expression;
PHP表达式,它的结果用以决定依赖项。 该表达式也可以是一个有效的PHP回调, 包括类方法名(array(ClassName/Object, MethodName)), 或者匿名函数(PHP 5.3.0以上)。该函数或者方法会 传递一个参数,即该依赖项对象本身。
方法详细
__construct()
方法
public void __construct(string $expression='true')
| ||
$expression | string | PHP表达式,它的结果用以决定依赖项。 |
public function __construct($expression='true')
{
$this->expression=$expression;
}
构造器。
generateDependentData()
方法
protected mixed generateDependentData()
| ||
{return} | mixed | 决定依赖项是否被改变需要的数据。 |
protected function generateDependentData()
{
return $this->evaluateExpression($this->expression);
}
生成决定依赖项是否被改变需要的数据。 该方法返回PHP表示结果。