调度PHP CodeIgniter或任何PHP应用程序

I'm trying to schedule my Controller Method in PHP CodeIgniter; I mean I need to call a controller method on specified times!My server is a Windows Server!

So far I followed the following article (http://amitdhamu.com/blog/automating-php-using-task-scheduler/) which schedules a PHP file (calls whole of the PHP File, but I need to call just a controller method!); then I researched and someone at "Scheduling a controller method by Windows task scheduller" said I can do it by:

php C:\Apache\htdocs\index.php myController <myMethod> <arg1> <arg2>

sample:

php C:\Apache\htdocs\index.php users update

I guess he meant something like :

php C:\xampp\htdocs\Project1\application\controllers\site.php test

Which test method is inside my "site" controller! But this one did not work either!

Could you please how I use schedulig to call a controller method on specified times for a Windows Server?

Thanks

drkbpwk609294
drkbpwk609294 你不直接调用控制器,所有请求甚至CLI请求都应该通过index.php,所以对于你的情况,index.php控制器方法arg1arg2..etc
接近 7 年之前 回复

2个回答



我没有这方面的经验,但谷歌搜索我设法把它拉到一起:</ p>

< pre> schtasks / create / tn“Test Cron Job”/ tr“C:\ PHP5 \ php.exe -f C:\ xampp \ htdocs \ Project1 \ application \ controllers \ site.php”/ sc hourly
</ code> </ pre>

这将每小时运行一次。 虽然您可以添加特定的命令行参数,但我认为您不能指定特定的方法。</ p>

来源: http://php.net/manual/en/install.windows.commandline.php http://drupal.org/node/31506 </ p>
</ div>

展开原文

原文

I don't have any experience doing this, but Googling I managed to pull this together:

schtasks /create /tn "Test Cron Job" /tr "C:\PHP5\php.exe -f C:\xampp\htdocs\Project1\application\controllers\site.php" /sc hourly

This will run hourly. I don't think you can specify a specific method, though you can add specific command line arguments.

Sources: http://php.net/manual/en/install.windows.commandline.php and http://drupal.org/node/31506

dsf11t5u1651
dsf11t5u1651 我认为海报错误地认为可以提供一种方法。 但是这个命令应该在任务管理器中创建一个任务,但不是使用GUI而是运行这个命令。
接近 7 年之前 回复
douji1853
douji1853 谢啦! 但Windows任务管理器可以完成同样的事情! 我正在寻找有人在这里说的正确语法:stackoverflow.com/questions/19479494 / ...
接近 7 年之前 回复
dongtigai3875
dongtigai3875 是的,放入单独的文件可能会起作用。 您还可以使用命令行参数(检查PHP.net链接)来运行特定方法。
接近 7 年之前 回复
dongzheng7165
dongzheng7165 如果我将控制器方法放在另一个控制器类的单独文件中并在其构造函数中调用它怎么办?
接近 7 年之前 回复



您可以下载curl( http ://curl.haxx.se/ )命令行util并写一个bat文件来调用你的url执行控制器方法,然后在windows中安排bat文件。</ p>

http://curl.haxx.se/docs/httpscripting.html </ p >

这是实现这一目标的最简单方法之一。</ p>
</ div>

展开原文

原文

You can download curl(http://curl.haxx.se/) command line util and write a bat file to call your url where the controller method is executed then schedule the bat file in windows.

http://curl.haxx.se/docs/httpscripting.html

This is one of the be easiest way to achieve this.

dragon19720808
dragon19720808 这是针对Windows Server的吗?
接近 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问