版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PHP指令行执行整合pathinfo模拟定时任务实例_ 指令行模式下,依据传参,调用不同掌握器。掌握器中依据配置定时执行指定方法 Application.php ?php class Application public static function main() header(content-type:text/html;charset=utf-8); self:register(); self:commandLine(); self:pathInfo(); /自动加载 public static function loadClass($class) $class=str_replace(
2、, /, $class); $dir=str_replace(, /, _DIR_); $class=$dir./.$class.php; require_once $class; /指令行下 public static function commandLine() if(php_sapi_name()=cli) $_SERVERPATH_INFO=; foreach ($_SERVERargv as $k=$v) if($k=0) continue; $_SERVERPATH_INFO.=/.$v; /pathinfo处理 public static function pathInfo()
3、if(isset($_SERVERPATH_INFO) $pathinfo=array_filter(explode(/, $_SERVERPATH_INFO); for($i=1;$i=count($pathinfo);$i+) $key=isset($pathinfo$i) ? $pathinfo$i : ; $value=isset($pathinfo$i+1) ? $pathinfo$i+1 :; switch ($i) case 1: $_GETm=ucfirst($key); break; case 2: $_GETc=ucfirst($key); break; case 3: $
4、_GETa=$key; break; default: if($i3) if($i%2=0) $_GET$key=$value; break; $_GETm=!empty($_GETm) ? ucfirst($_GETm) : Index; $_GETc=!empty($_GETc) ? ucfirst($_GETc) : Index; $_GETa=!empty($_GETa) ? $_GETa : index; $class=Controller$_GETm$_GETc; $controller=new $class; $controller-$_GETa(); /致命错误回调 publi
5、c static function shutdownCallback() $e=error_get_last(); if(!$e) return; self:errorHandler($etype,font color=redFatal Error/font .$emessage,$efile,$eline); /错误处理 protected static function myErrorHandler($errno,$errstr,$errfile,$errline) list($micseconds,$seconds)=explode( ,microtime(); $micseconds=
6、round($micseconds*1000); $micseconds=strlen($micseconds)=1 ? 0.$micseconds : $micseconds; if(php_sapi_name()=cli) $break=rn; else $break=br/; $mes=.date(Y-m-d H:i:s,$seconds).:$micseconds .$errfile. .$errline. line .$errstr.$break; echo $mes; /注册 public static function register() error_reporting(0);
7、 set_error_handler(function($errno,$errstr,$errfile,$errline) self:myErrorHandler($errno,$errstr,$errfile,$errline); ); register_shutdown_function(function() self:shutdownCallback(); ); spl_autoload_register(self:loadClass); Application:main(); ControllerClientCron.php ?php namespace ControllerClien
8、t; class Cron private $second=0; private $tasks=array( array(duration=5,method=doSomething), array(duration=2,method=doSomething2), ); public function index() while (true) sleep(1); $this-second+; foreach($this-tasks as $task) if($this-second%$taskduration=0) $this-$taskmethod(); public function doSomething() echo .date(Y-m-d H:i:s,time(). doSomething1 ok!rn; public function doSomething2() echo .date(Y-m-d H:i:s,time(). doSomething2 ok!rn; 效果: 方法doSomethin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年中国手提式二氧化碳灭火器数据监测研究报告
- 2024至2030年中国工控电缆数据监测研究报告
- 读书会活动实施方案
- 2024至2030年中国刚玉莫来石质浇注料数据监测研究报告
- 2024至2030年重力式造浪机项目投资价值分析报告
- 2024至2030年搪孔头项目投资价值分析报告
- 2024至2030年三叉腰鼓形庭院灯项目投资价值分析报告
- 2024年暗装式小便感应冲水器项目可行性研究报告
- 电气控制柜技术协议书
- 车间安全培训试题【突破训练】
- 《药品生产监督管理办法》知识考试题库及答案
- 幼教培训课件:《幼儿园如何有效组织幼儿户外自主游戏》
- 17《爬天都峰》第一课时 公开课一等奖创新教学设计
- “非遗”之首-昆曲经典艺术欣赏智慧树知到期末考试答案章节答案2024年北京大学
- 股权投资撤资通知书
- 服务质量保障措施及进度保障措施
- 2024年美国健身器材市场现状及上下游分析报告
- 非物质文化遗产介绍-剪纸文化
- 针灸防治老年病
- 新版手术室管理规范
- 《物流成本管理》(朱伟生 第六版)课件全套 第1-12章 绪论、物流成本计算 - 物流成本绩效考评
评论
0/150
提交评论