Выполнение запланированной задачи PHP через модуль Windows Apache - PullRequest
0 голосов
/ 02 марта 2010

Хорошо, у нас есть этот сайт, который мы переняли у предыдущей фирмы ... PHP, Zend Framework, MySQL и т. Д.

Это интересный сайт, поскольку они используют внешнюю CMS (они управляют некоторыми данными, такими как форумы, подписка пользователей и т. Д.)

Итак, есть библиотека, которая связывается через вызовы веб-служб из PHP с CMS, а затем из JavaScript она вызывает код, который возвращает данные JSON (которые затем обрабатываются в HTML / CSS).

Нам нужно запланированное задание, которое выполняется ежедневно. Его работа состоит в том, чтобы получать пользователей из этой CMS, проходить через них и проверять количество полей xxx. В зависимости от количества заполненных полей, если заполнено 80% или более, они могут быть избранным пользователем.

И в нашей базе данных у меня есть 2 поля (isFeatured и featuredIndex). isFeatured - флаг, featuredIndex, так как избранный пользователь будет либо № 1, № 2, либо № 3.

В любом случае, наша среда разработки - Windows + PHP5 + Apache (PHP работает как модуль Apache, а не CGI).

Я думаю, что самый простой подход - это написать страницу PHP, которая будет находиться в корне сети, которая будет иметь только разрешения, чтобы ее можно было запускать как запланированную задачу. Что вы, ребята, думаете?

Моя задача - мне нужно проверить это локально (предложения?). Промежуточные и производственные среды - это установки LAMP, между прочим. Итак, я думаю, мои вопросы следующие:

  1. Это хороший способ решения этой проблемы? То есть запланированное задание, использующее существующую платформу (которая опирается на эту стороннюю CMS с коммуникациями веб-сервисов и Zend Framework)
  2. Как мне написать этот скрипт, чтобы он мог работать как в Windows, так и в Linux (PHP)?
  3. И как мне запланировать ежедневный запуск этого сценария в Windows и Linux (поскольку он основан на Интернете).

Спасибо всем, -Стив

Ответы [ 2 ]

0 голосов
/ 03 марта 2010

All

Похоже, я должен создать скрипт и получить доступ к нему через Интернет, а затем создать вызов cron для работы wget. Очевидно, wget доступен через Windows, и я могу использовать его в дополнение к запланированным задачам в Windows, чтобы он работал в Windows, а для Linux есть crontab + wget.

-Стив

0 голосов
/ 03 марта 2010

Если вы использовали популярные фреймворки, есть большая вероятность, что вы сможете найти решение. Это нормально, что вы даете нам такую ​​информацию, но без какого-либо примера кода мы не сможем, даже если бы мы это сделали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...