数码资讯
PHP设计模式责任链(职责链模式)
复制代码代码如下所示: < PHP *责任链模型 * *为了解除发送方和接收方之间的耦合,使用多个对象以偶然方式处理请求。这些对象被链接到一个链中,请求沿着这个链传递,直到对象处理它为止。 * * / 抽象类的处理程序 { 保护_handler美元= null; 公共功能setsuccessor($
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
复制代码代码如下所示:
< PHP
*责任链模型
*
*为了解除发送方和接收方之间的耦合,使用多个对象以偶然方式处理请求。这些对象被链接到一个链中,请求沿着这个链传递,直到对象处理它为止。
*
* /
抽象类的处理程序
{
保护_handler美元= null;
公共功能setsuccessor($处理)
{
美元-> _handler = $处理程序;
}
摘要功能handleRequest(合要求);
}
类concretehandlerzero扩展处理程序
{
公共职能handleRequest($请求)
{
如果($=0)
{
0;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
类concretehandlerodd扩展处理程序
{
公共职能handleRequest($请求)
{
如果(请求% 2)
{
请求$。奇;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
类concretehandlereven扩展处理程序
{
公共职能handleRequest($请求)
{
如果(!(请求% 2)
{
请求$。是偶数;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
例如
objzerohander美元=新concretehandlerzero();
objevenhander美元=新concretehandlereven();
objoddhander美元=新concretehandlerodd();
objzerohander -> setsuccessor美元(美元objevenhander);
objevenhander -> setsuccessor美元(美元objoddhander);
foreach(数组(2,3,4,5,0)达行)
{
objzerohander美元-> handleRequest(合排);
}
< PHP
*责任链模型
*
*为了解除发送方和接收方之间的耦合,使用多个对象以偶然方式处理请求。这些对象被链接到一个链中,请求沿着这个链传递,直到对象处理它为止。
*
* /
抽象类的处理程序
{
保护_handler美元= null;
公共功能setsuccessor($处理)
{
美元-> _handler = $处理程序;
}
摘要功能handleRequest(合要求);
}
类concretehandlerzero扩展处理程序
{
公共职能handleRequest($请求)
{
如果($=0)
{
0;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
类concretehandlerodd扩展处理程序
{
公共职能handleRequest($请求)
{
如果(请求% 2)
{
请求$。奇;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
类concretehandlereven扩展处理程序
{
公共职能handleRequest($请求)
{
如果(!(请求% 2)
{
请求$。是偶数;
{人}
这_handler美元-> -> handleRequest(合要求);
}
}
}
例如
objzerohander美元=新concretehandlerzero();
objevenhander美元=新concretehandlereven();
objoddhander美元=新concretehandlerodd();
objzerohander -> setsuccessor美元(美元objevenhander);
objevenhander -> setsuccessor美元(美元objoddhander);
foreach(数组(2,3,4,5,0)达行)
{
objzerohander美元-> handleRequest(合排);
}
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。