Планирование PHP CodeIgniter или любых приложений PHP

Я пытаюсь запланировать мой метод контроллера в PHP CodeIgniter; Я имею в виду, мне нужно вызвать метод контроллера в указанное время! Мой сервер - это Windows Server!

До сих пор я следил за следующей статьей (http://amitdhamu.com/blog/automating-php-using-task-scheduler/), которая планирует файл PHP (вызывает весь файл PHP, но мне нужно вызвать только контроллер метод!); затем я исследовал, а кто-то из " Планирование контроллера с помощью диспетчера задач Windows " сказал, что я могу это сделать:

php C:\Apache\htdocs\index.php myController <mymethod> <arg1> </arg1></mymethod>

образец:

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

Наверное, он имел в виду что-то вроде:

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

Какой метод тестирования находится внутри моего контроллера "сайта"! Но этот тоже не сработает!

Не могли бы вы рассказать, как я использую schedulig для вызова метода контроллера в указанное время для Windows Server?

благодаря

2 ответа

Вы можете загрузить утилиту curl (http://curl.haxx.se/) и написать файл bat, чтобы вызвать ваш url, где выполняется метод контроллера, а затем запланировать файл bat в окнах.

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

Это один из самых простых способов добиться этого.


У меня нет опыта в этом, но Googling мне удалось собрать это вместе:

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

Это будет выполняться ежечасно. Я не думаю, что вы можете указать конкретный метод, хотя вы можете добавить определенные аргументы командной строки.

Источники: http://php.net/manual/en/install.windows.commandline.php и http://drupal.org/node/31506

licensed under cc by-sa 3.0 with attribution.