Как начать использовать задание cron в Zend Framework 2

я хочу отправить электронное письмо в определенное время дня (9 утра).

Я видел, что мне нужно использовать задания cron. Я видел много разных вещей, как с этим работать, но это кажется действительно сложным. Может кто-нибудь объяснить мне, как это сделать?

Заранее спасибо.


person KimberlyGS    schedule 10.07.2014    source источник
comment
Какая конкретно у вас проблема? Если вы не знаете, как создать задачу CLI, возможно, вы ищете компонент Zend\Console.   -  person lku    schedule 10.07.2014
comment
Это тоже возможно. Я на самом деле не знаю, что я должен использовать для достижения этой цели. Он должен автоматически отправлять электронное письмо пользователям веб-сайта.   -  person KimberlyGS    schedule 10.07.2014


Ответы (1)


  1. Создайте MailController с помощью sendMailAction() внутри модуля app/root.

  2. Добавьте консольный маршрут к вашему приложению/корневому модулю module.config.php:

массив('маршрутизатор' => массив('маршруты' => массив(..)),

'console' => array(
    'router' => array(
        'routes' => array(
            'cronroute' => array(
                'options' => array(
                    'route'    => 'sendemail',
                    'defaults' => array(
                        'controller' => 'Root\Controller\Console',
                        'action' => 'sendemail'
                    )
                )
            )
        )
    )
)
);
  1. Выполните это в Терминале

    $ cd путь к продукту php public/index.php sendemail

person Ram Hemareddy    schedule 10.07.2014
comment
Можно ли это сделать автоматически? без того, чтобы я что-то делал в Терминале? - person KimberlyGS; 10.07.2014
comment
В зависимости от вашего хостера доступны сервисы/программы/графический интерфейс cronjob. - person cptnk; 10.07.2014