本文整理汇总了PHP中Observer::attach方法的典型用法代码示例。如果您正苦于以下问题:PHP Observer::attach方法的具体用法?PHP Observer::attach怎么用?PHP Observer::attach使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Observer
的用法示例。
在下文中一共展示了Observer::attach方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: model
public function model($route)
{
// Sanitize the call
$route = str_replace('../', '', (string) $route);
$file = DIR_APPLICATION . 'model/' . $route . '.php';
$class = 'Model' . preg_replace('/[^a-zA-Z0-9]/', '', $route);
if (is_file($file)) {
include_once $file;
$observer = new Observer($this->registry);
foreach (get_class_methods($class) as $method) {
$observer->attach($method, $this->closure($this->registry, $route . '/' . $method));
}
$this->registry->set('model_' . str_replace('/', '_', (string) $route), $observer);
} else {
trigger_error('Error: Could not load model ' . $route . '!');
exit;
}
}
示例2: notify
}
public function notify()
{
foreach (self::$_observers as $obj) {
$obj->update($this);
}
}
}
/**
* 观察者1
*/
class Email implements Ob_standard
{
public function update(Observer $obj)
{
echo '发送邮件';
}
}
/**
* 观察者2
*/
class Files implements Ob_standard
{
public function update(Observer $obj)
{
echo '发送邮文件';
}
}
//实验
Observer::attach(new Files());
$m = new Observer();