我有一个paginator类,它应该可以从控制器获取config.xml和当前页面的限制。
如何在config.xml中定义限制,以及如何在控制器之外访问它?
问候
将分页器类定义为DIC服务,并将service_container
添加为服务,例如
//paginator class
//namespace definitions
use Symfony'Component'DependencyInjection'ContainerInterface;
class Paginator{
/**
* @var Symfony'Component'DependencyInjection'ContainerInterface
*/
private $container;
public function __construct(ContainerInterface $container){
$this->container = $container;
}
public function yourPaginationMethod(){
$limit = $this->container->getParameter("limit.conf.parameter");
//rest of the method
}
}
然后在你的包裹的services.yml
。
#services.yml
paginator_service:
class: FQCN'Of'Your'PaginatorClass
arguments: [@service_container]
在您的控制器中,您可以通过以下方式访问Paginator
。
//in controller method
$paginator = $this->get('paginator_service');
有关它的更多信息,您可以查看Symfony文档的服务容器部分。