<?php
abstract class messageDetail
{
abstract function filter($msg);
}
class setmessage extends messageDetail
{
public function filter($msg)
{
return $msg;
}
}
class messageHandle extends messageDetail
{
public $message;
public $obj;
public function __construct($obj)
{
$this -> obj = $obj;
}
public function filter($msg)
{
$this -> message = $msg;
}
}
class htmlFilter extends messageHandle
{
public function filter($msg)
{
parent::filter($msg);
return 'html过滤'.$this->msg;
}
}
class ensitiveFilter extends messageHandle
{
public function filter($msg)
{
parent::filter($msg);
return '敏感词汇过滤'.$this->message;
}
}
$obj = new htmlFilter(new ensitiveFilter(new setmessage()));
echo $obj -> filter('测试一下');