我有一个paginator类,它应该从config.xml和控制器的当前页面中获取限制。
如何在config.xml中定义限制以及如何在控制器外部访问它?
此致
答案 0 :(得分:2)
将您的paginator类定义为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文档的Service container部分。