Bạn cũng có thể tận dụng hệ thống Tham số dịch vụ tích hợp, cho phép bạn cách ly hoặc sử dụng lại giá trị:
# app/config/parameters.yml
parameters:
ga_tracking: UA-xxxxx-x
# app/config/config.yml
twig:
globals:
ga_tracking: "%ga_tracking%"
Bây giờ, biến ga_tracking có sẵn trong tất cả các mẫu Twig:
<p>The google tracking code is: {{ ga_tracking }}</p>
Tham số này cũng có sẵn trong bộ điều khiển:
$this->container->getParameter('ga_tracking');
Bạn cũng có thể định nghĩa một dịch vụ là biến Twig toàn cầu (Symfony2.2 +):
# app/config/config.yml
twig:
# ...
globals:
user_management: "@acme_user.user_management"
http://symfony.com/doc/civerse/templating/global_variables.html
Nếu biến toàn cục bạn muốn đặt phức tạp hơn - giả sử một đối tượng - thì bạn sẽ không thể sử dụng phương pháp trên. Thay vào đó, bạn sẽ cần tạo Tiện ích mở rộng Twig và trả về biến toàn cục dưới dạng một trong các mục trong phương thức getGlobals.