脚本宝典收集整理的这篇文章主要介绍了php状态模式(state pattern),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
...
<?PHP /* The state pattern encapsulates the VARying behavior for the same object based on ITs internal state,making an object apPEar as if it has changed its class. */ interface Statelike { public function writeName(StateContext $context,$name); } class StateLowerCase implements Statelike { public function writeName(StateContext $context,$name) { echo strtolower($name); $context->setState(new StateMultileUpperCase()); } } class StateMultileUpperCase implements Statelike { PRivate $count = 0; public function writeName(StateContext $context,$name) { $this->count++; echo strtoupper($name); if ($this->count > 1) { $context->setState(new StateLowerCase()); } } } class StateContext { private $state; public function setState(Statelike $state) { $this->state = $state; } public function writeName($name) { $this->state->writeName($this,$name); } } $stateContext = new StateContext(); $stateContext->setState(new StateLowerCase()); $stateContext->writeName(‘Monday<br/>‘); $stateContext->writeName(‘TuesDay<br/>‘); $stateContext->writeName(‘Wednesday<br/>‘); $stateContext->writeName(‘Thursday<br/>‘); $stateContext->writeName(‘Friday<br/>‘); $stateContext->writeName(‘Saturday<br/>‘); $stateContext->writeName(‘Sunday<br/>‘); ?>
以上是脚本宝典为你收集整理的php状态模式(state pattern)全部内容,希望文章能够帮你解决php状态模式(state pattern)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。