Как запустить файл PHP в запланированном задании (планировщик заданий Windows) - PullRequest
46 голосов
/ 17 ноября 2008

Как создать запланированное задание для запуска файла PHP?
Да, я заполнил все в запланированном задании, но оно все еще не работает.

Выполнить: "C: \ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ WEB \ 4w_website \ save.php"

Начать с: "C: \ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ WEB \ 4w_website"

Он просто открывает файл PHP в Блокноте.

Я дал правильное имя пользователя и pwd.

Пожалуйста, помогите мне ..

Ответы [ 7 ]

67 голосов
/ 17 ноября 2008

Команда запуска должна быть

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

Из справки командной строки php.exe:

-f         Parse and execute <file>.
14 голосов
/ 03 февраля 2012

Я только что написал .bat файл, который делает работу file.bat

@ECHO OFF
php.exe -f "C:\code\cust.php"

И поместите это в Расписание задач следующим образом:

Прогон: C:\code\file.bat

Начало в: C:\code\

6 голосов
/ 28 января 2014

Если вы запускаете сценарии php, в большинстве случаев сценарий ожидает запуска в текущей папке. Это означает, что вы должны настроить папку для каждого действия, используйте поле " Start In ".

Пример:

Run: C:\php\php.exe 
Arguments: -f C:\web\myscript.php

Не забудьте:

 Start in: C:\web\
5 голосов
/ 17 ноября 2008

Похоже, у вас нет файлов PHP, связанных с EXE.

Вы можете сделать это Мой компьютер > Инструменты > Параметры папки > Типы файлов . Если ничего другого, это также может помочь вам проверить свои настройки для них.

В противном случае вы можете указать "C: \ path \ to \ php.exe [файл]" в задаче.

2 голосов
/ 07 октября 2015

Для тех людей, которые не могут заставить работать ответ @ Tomalak:

Проверьте, есть ли в вашем каталоге пробелы (). Если это так, вам нужно заключить их в ".

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

И если он все еще не работает, проверьте ваш file.php, есть ли в нем включенные файлы.

include("file2.php"); /* OR */
include_once("file2.php");

Убери это. А если действительно нужен включенный файл в file.php, попробуйте переместить код / ​​скрипт из этого включенного файла в ваш основной файл.

2 голосов
/ 03 июля 2012

Вот что я сделал:

  1. PHP-файл

    <?php my code goes here ?>
    

    * Обратите внимание, если вы используете HTTP API / CURL в CLI, используйте dl("php_curl.dll");

    это загружает скручиваемость в кли

  2. Теперь я добавил PHP в переменную пути Windows, это можно сделать с помощью «Мой компьютер», свойств, расширенных настроек, переменных среды, нового

  3. Затем я создал файл .bat, просто откройте блокнот и введите код ниже и сохраните как myfile.bat

    @ECHO OFF
    php -f d:\wamp\www\V3\task.php
    

    Этот сайт может помочь вам в синтаксисе .bat файла.

  4. Теперь создайте новое запланированное задание в Windows и вызовите указанный выше файл .bat в качестве источника,

0 голосов
/ 17 ноября 2008

Я думаю, вы должны выполнить свой скрипт PHP через URL. Вы можете написать пакетный скрипт для выполнения URL. Почему вы не пишете серверный скрипт на другом языке, например, пакетный скрипт, vbscript или т. Д.

...