怎么简单实现工作流?

PHP中文网
发布: 2017-03-24 10:27:47
原创
3611人浏览过

最近一个项目需要实现工作流。我的想法是使用一些工作流引擎,但php平台上的工作流引擎很少,没什么成熟的案例。cto也要我们自己实现。但现在我是眼前一抹黑,完全不知道怎么实现。能否请大家说说一个基本的工作流需要怎么实现?

解决方法:

随便写的,仅供参考

<?php
class process{

   const STATE_1   = 1;
   const STATE_2   = 2;
   const STATE_3   = 3;
   const STATE_4   = 4;
   const STATE_5   = 5;
   const STATE_ALL = 99;

   private $state     = null;
   private $statesLog = [];

   public function setState($state)
   {
       if (!$this->checkRoute($state)) {
           return false;
       }
       $this->state = $state;
       return true; 
   }

   protected function routes()
   {
       return [
           static::STATE_1=>[
               'id'      =>static::STATE_1,
               'name'    =>'状态1',
               'desc'    =>'状态1的描述',
               'to'      =>[static::STATE_3, static::STATE_4],
               'actions' =>[Actions::AC1, Actions::AC3],
               'hooks'   =>[...],
           ]
           ...
       ];
   }

}

class Actions{
   const AC1 = 1;
   const AC2 = 2;
   const AC3 = 3;

   public static function actions()
   {
       return [
           static::AC1 =>[
               'id'   =>static::AC1,
               'name' =>'AC1',
               'action'=>[
                   'do'    =>['nameSpace', 'className', 'methodName'],
                   'route' =>'/tools/sms/push',
                   'attr' =>['class'=>'hight_light warning'],
               ],
           ]
           ...
       ];
   }

   public static function getAction($actionId)
   {
       $actions = static::actions();
       return $actions[$actionId] ?? null;
   } 
}
登录后复制

可以看看php协程实现多任务协作,Generator,看看对你是否有帮助

相关文章:

css3全屏大图小图切换焦点图广告代码
css3全屏大图小图切换焦点图广告代码

此代码么有依靠js文件实现的,而且大图和小图是分开的,这样用户在打开网页的时候能节约不少时间和流量 此代码实现方法也很简单,可以直接把index.html和images下面的文件拷贝到你需要运行的位置,然后保存即可,images下面的大图和小图按照你的需求来改,也可以给大图增加链接。

css3全屏大图小图切换焦点图广告代码 209
查看详情 css3全屏大图小图切换焦点图广告代码

PHP 工作流 自定义表单解决方案

介绍一个真正符合中国国情的工作流设计参考(包括PHP实现)

通达OA2015版工作流插件和列表控件数据解析

相关标签:
php
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号