fpokoj/session-message-injector

向 Symfony 会话中注入消息的工具。用例?在后台生成大文件并在完成后通知用户。

dev-master / 1.0.x-dev 2020-02-04 15:05 UTC

This package is auto-updated.

Last update: 2024-09-05 00:38:19 UTC


README

用于什么?

用于向会话中注入闪存消息。例如,生成大文件并在完成后提供下载链接通知用户。

示例

    $sessionInjector = $this->get('session_injector');
    $event = new InjectMessageEvent(
        $request->getSession()->getId(),
            'test:session:inject',
            ['test1'=>'arguemntForTest1', 'test2' => 'arguemntForTest2']
    );
    $sessionInjector->injectMessage($event);

示例命令

protected function configure()
{
    $this->setName('test:session:inject')
        ->setDescription('test inject data to session')
        ->setDefinition([
            new InputArgument('test1', InputArgument::REQUIRED, 'Language'),
            new InputArgument('test2', InputArgument::REQUIRED, 'Shop urlname'),
        ]);
}

protected function execute(InputInterface $input, OutputInterface $output)
{
    $test1 = $input->getArgument('test1');
    $test2 =  $input->getArgument('test2');
    sleep(10);
    $output->write(json_encode(['type' => 'success', 'message' => 'Its WORKING!']));
}