запуск сценариев php локально, хотя диспетчер задач

Я ищу советы.

Rignt теперь у меня есть куча php-скриптов, которые я запланировал через cron. Они запускают мою локальную машину, делая вещи, как вытаскивание из mysql db и отправка автоматических писем. Чтобы запустить их, у меня есть что-то вроде этого в crontab: 0 7 * * 1 /usr/bin/php /phpscripts/script.php

Мне нужно перенести все эти сценарии на машину Windows. Я планирую использовать планировщик задач Windows для запуска сценариев, но как я могу запустить сценарии php локально? Насколько я понимаю, вам нужно что-то вроде xampp для запуска сервера apache? Я предполагаю, что мне нужен эквивалент Windows / usr / bin / php в crontab.

Установка PHP

Вам не нужно устанавливать xammp , вы можете установить только один PHP, посмотрите на руководство по установке Windows PHP:

  • Установщик Windows (PHP 5.1.0 и более ранние версии)
  • Установщик Windows (PHP 5.2 и более поздние версии)
  • Шаги ручной установки

Если вы предпочитаете устанавливать XAMP, вы можете запустить PHP-скрипт после нахождения php.exe с флагом -f :

 C:\Xampp\php\php.exe -f C:\Xampp\htdocs\my_script.php 

Запуск файла PHP

После установки PHP установите флажок в командной строке PHP в руководстве Microsoft Windows для получения информации о том, как запустить скрипт. На странице есть объяснение того, как сделать исполняемый файл php, поэтому вы можете запустить его как:

 "C:\PHP Scripts\script" -arg1 -arg2 -arg3 

Убедитесь, что вы используете административную учетную запись для запуска команды. В противном случае могут возникнуть проблемы с разрешениями. Дополнительная информация в разделе Введение в использование PHP в командной строке

Планирование задачи

Перейдите в Start -> Programs -> Accessories -> System Tools -> Scheduled Tasks ,

  1. Щелкните правой кнопкой мыши на пустое место в окне «Запланированная задача» и выберите «Создать»> «Запланированная задача» (также доступно через «Файл» -> «Создать»> «Запланированная задача»)
  2. Назовите новую задачу (как насчет «Билла»? Он выглядит как Билл, не так ли? »Г-н Б. Эволюция, II« Звучит так царственно ».
  3. Дважды щелкните новую задачу, чтобы открыть окно свойств (или Файл -> Свойства)
  4. На вкладке «Задача» введите ту же команду, которую вы использовали для проверки сценария выше. Например, я бы сказал:

C: \ PHP \ php.exe "C: \ Inetpub \ wwwroot \ blogs \ cron \ cron_exec.php"

  • Перейдите на вкладку «Расписание» и введите, когда и как часто должна выполняться задача. Расписание по умолчанию запускается один раз в день и должно быть хорошо для основного использования, но не стесняйтесь настраивать по мере необходимости.
  • Остальные поля можно оставить как есть, если вы не туз и не знаете, что делаете.
  • Нажмите «ОК», и мы закончили!
  • для получения дополнительной информации см. настройку запланированной задачи окна .

    Настройте свою задачу для запуска, когда захотите (времена и все такое)

    и поместите это в command :

     C:\Path\to\php.exe -f "C:\Path\to\file.php" 

    Изменить: вы также можете установить второй запуск php.ini, когда CLI используется для запуска файла, который не имеет ограничений на максимальное время выполнения и т. П. Очень удобная разница и лучше подходит для запуска (потенциально) длинных сценариев исполнения.

    Вы можете сделать это, создав файл php-cgi.ini в вашей папке PHP, где находится ваш файл php.ini . Это будет использоваться автоматически, когда PHP-файл будет выполнен из CLI (это выполнение запланированных задач).

    Также обратите внимание, что планировщик Windows просто закончит ошибку, из-за которой ваш скрипт упадет, поэтому запуск некоторых дополнительных протоколов может быть хорошей идеей в случае, если ваши скрипты выйдут раньше.