繁体   English   中英

Symfony 2事件监听器和获取URL参数

[英]Symfony 2 Event Listener And Get URL Parameters

我有这个事件监听器类:

<?php

namespace Vdv\TimesheetsBundle\Event;

use Oneup\UploaderBundle\Event\PostPersistEvent;
use Symfony\Component\HttpFoundation\Request;

class UploadListener {

public function __construct($doctrine) {
    $this->doctrine = $doctrine;
}

public function onUpload(PostPersistEvent $event) {
    $request = $event->getRequest();
}

}

这个网址:

http://localhost/vdvinfra/web/app_dev.php/timesheet/add/1/252

我想从该网址获取一些参数(id's)。 我怎样才能在事件监听器类中获取它。 当我var_dump这个时,变量$ _GET是空的...

谢谢!

您可以将@request_stack注入事件监听器,就像您已经使用doctrine一样:

public function __construct($doctrine, $requestStack) {
    $this->doctrine = $doctrine;
    $this->request = $requestStack->getCurrentRequest();

    // access the parameters like this:
    $allParams = $this->request->attributes->all();
    $someParam = $this->request->attributes->get('parameter_name');
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM