Может ли скрипт PHP регулярно выполняться на сервере без запросов от клиента? - PullRequest
3 голосов
/ 08 января 2010

Я напишу скрипт для разбора текстовых документов в базу данных MySQL. Я буду конвертировать PDF в текст с помощью отдельной утилиты. Эти PDF-файлы будут отправлены в виде вложений по электронной почте.

Я смотрю, смогу ли я сделать это с PHP, так как это язык сервера, с которым я больше всего знаком. Второй вариант - Perl, но я приму ваши рекомендации.

Так что язык должен уметь:

  1. Проверка учетной записи электронной почты на наличие писем с вложениями (каждые несколько минут или около того).
  2. Сохранить вложение.
  3. Анализ файла (поиск контактной информации) с использованием регулярных выражений.
  4. И поместите результаты в базу данных MySQL

У меня не будет полного доступа к серверу, так как он будет размещен на GoDaddy или подобном.

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

Спасибо.

Ответы [ 5 ]

9 голосов
/ 08 января 2010

Вы можете сделать это с помощью скрипта PHP, управляемого с помощью задания cron .

4 голосов
/ 08 января 2010

Вы можете регулярно запускать HTTP-запросы, используя сервис типа http://www.setcronjob.com/

3 голосов
/ 08 января 2010

PHP сам по себе не может выполнять задачи без запроса клиента.

Общий способ использования задания cron для планирования сценариев запуска (shell, perl, PHP , python и т. Д.).

Если вы работаете в IIS, вы можете использовать Расписание задач в Windows.

1 голос
/ 08 января 2010

Cron Работа это путь. Кроме того, если я могу дать рекомендацию, убедитесь, что PHP-скрипт размещен из каталога, доступного через Интернет, и запустите его через CLI php.

Если ваш сценарий размещен в каталоге, доступном из Интернета, возможно, он будет запускаться чаще, чем нужно ... особенно, если его заполучит бот / сканер.

0 голосов
/ 08 января 2010

Проверьте этого ребенка - http://www.iamjacksdesign.com/blog/check-pop3-email-with-php/ - есть также http://www.php.net/manual/en/ref.imap.php

Вы можете использовать cron для регулярного запуска сценария проверки электронной почты - http://www.codewalkers.com/c/a/Server-Administration/Introduction-to-crontab/

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