mezzio / mezzio-twigrenderer
Mezzio的Twig集成
Requires
- php: ~8.1.0 || ~8.2.0 || ~8.3.0
- mezzio/mezzio-helpers: ^5.0
- mezzio/mezzio-router: ^3.7
- mezzio/mezzio-template: ^2.0
- psr/container: ^1.0 || ^2.0
- twig/twig: ^3.14.0
Requires (Dev)
- laminas/laminas-coding-standard: ~2.5.0
- phpunit/phpunit: ^10.5.33
- psalm/plugin-phpunit: ^0.19.0
- vimeo/psalm: ^5.26.1
Conflicts
- 2.17.x-dev
- 2.16.x-dev
- 2.16.0
- 2.15.x-dev
- 2.15.0
- 2.14.x-dev
- 2.14.0
- 2.13.x-dev
- 2.13.0
- 2.12.x-dev
- 2.12.0
- 2.11.x-dev
- 2.11.0
- 2.10.x-dev
- 2.10.0
- 2.9.x-dev
- 2.9.0
- 2.8.x-dev
- 2.8.0
- 2.7.x-dev
- 2.7.0
- 2.6.x-dev
- 2.6.1
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.0
- 2.0.0rc1
- 2.0.0alpha1
- 1.5.0
- 1.4.0
- 1.3.0
- 1.2.1
- 1.2.0
- 1.1.1
- 1.1.0
- 1.0.1
- 1.0.0
- 0.3.1
- 0.3.0
- 0.2.1
- 0.2.0
- 0.1.1
- 0.1.0
- dev-renovate/lock-file-maintenance
- dev-renovate/phpunit-phpunit-11.x
This package is auto-updated.
Last update: 2024-09-16 04:49:12 UTC
README
🇷🇺 俄罗斯公民
我们是来自不同国家的Laminas参与者。我们中的许多人既有在俄罗斯的朋友、亲属和同事,也有在乌克兰的。我们中的一些人出生在俄罗斯,一些人在俄罗斯生活。我们中的一些祖父母在二战中与法西斯作战。在这里,没有人支持法西斯主义。
我们中的一个团队成员有一个乌克兰亲属,她带着儿子逃离了家园。火车因为前方道路上的轰炸而延误。我们有一些朋友在防空洞里躲藏。我们在空袭后焦急地等待他们的消息,这些空袭无差别地轰炸医院、学校、幼儿园和房屋。我们不是从任何媒体上得知这些消息,我们是亲眼目睹的。
你们对我们足够信任,愿意使用我们的程序,我们请求你们再次信任我们。我们需要帮助。走出家门,抗议这场毫无意义的战争。停止杀戮。说“停止战争!”
🇺🇸 俄罗斯公民
我们来自世界各地。我们中的许多人既在俄罗斯也有在乌克兰的朋友、家人和同事。我们中的一些人出生在俄罗斯,一些人在俄罗斯生活。我们中的一些祖父母在二战中与纳粹作战。在这里,没有人支持法西斯主义。
我们中的一个团队成员有一个乌克兰亲属,她带着儿子逃离了家园。火车因为前方道路上的轰炸而延误。我们有一些朋友在防空洞里躲藏。我们在空袭后焦急地等待他们的消息,这些空袭无差别地轰炸医院、学校、幼儿园和房屋。我们不是从任何媒体上得知这些消息,这是我们亲身经历。
你们对我们足够信任,愿意使用我们的软件。我们请求你们信任我们说出真相。我们需要帮助。走出家门,抗议这场不必要的战争。停止杀戮。说“停止战争!”
安装
使用composer安装此库
$ composer require mezzio/mezzio-twigrenderer
我们建议使用依赖注入容器,并对container-interop进行类型提示。我们可以推荐以下实现:
- laminas-servicemanager:
composer require laminas/laminas-servicemanager
- pimple-interop:
composer require mouf/pimple-interop
- Aura.Di:
composer require aura/di
Twig扩展
包含的Twig扩展添加了对URL生成的支持。如果将UrlHelper和ServerUrlHelper注册到容器中,则扩展会自动激活。
-
path
: 对于给定的路由和参数渲染相对路径。如果没有路由,则返回当前路径。{{ path('article_show', {'id': '3'}) }} Generates: /article/3
path
支持可选查询参数和片段标识符。{{ path('article_show', {'id': '3'}, {'foo': 'bar'}, 'fragment') }} Generates: /article/3?foo=bar#fragment
默认情况下,在适用的情况下使用当前路由结果。要禁用此功能,可以将
reuse_result_params
选项设置。{{ path('article_show', {}, {}, null, {'reuse_result_params': false}) }}
-
url
:为给定的路由和参数渲染绝对URL。如果没有路由,则返回当前URL。{{ url('article_show', {'slug': 'article.slug'}) }} Generates: http://example.com/article/article.slug
url
也支持查询参数和片段标识符。{{ url('article_show', {'id': '3'}, {'foo': 'bar'}, 'fragment') }} Generates: http://example.com/article/3?foo=bar#fragment
默认情况下,在适用的情况下使用当前路由结果。要禁用此功能,可以将
reuse_result_params
选项设置。{{ url('article_show', {}, {}, null, {'reuse_result_params': false}) }}
-
absolute_url
:从给定的路径渲染绝对URL。如果路径为空,则返回当前URL。{{ absolute_url('path/to/something') }} Generates: http://example.com/path/to/something
-
asset
渲染一个(可选带有版本号的)资产URL。{{ asset('path/to/asset/name.ext', version=3) }} Generates: path/to/asset/name.ext?v=3
要获取资产的绝对URL
{{ absolute_url(asset('path/to/asset/name.ext', version=3)) }} Generates: http://example.com/path/to/asset/name.ext?v=3
配置
如果您使用的是 laminas-component-installer,则在通过composer要求此包时,会自动为您配置工厂。如果没有组件安装器,您需要在您的 config/config.php
中包含 ConfigProvider
。可选配置可以存储在 config/autoload/templates.global.php
中。
'templates' => [ 'extension' => 'file extension used by templates; defaults to html.twig', 'paths' => [ // namespace / path pairs // // Numeric namespaces imply the default/main namespace. Paths may be // strings or arrays of string paths to associate with the namespace. ], ], 'twig' => [ 'cache_dir' => 'path to cached templates', 'assets_url' => 'base URL for assets', 'assets_version' => 'base version for assets', 'extensions' => [ // extension service names or instances ], 'runtime_loaders' => [ // runtime loaders names or instances ], 'globals' => [ // Global variables passed to twig templates 'ga_tracking' => 'UA-XXXXX-X' ], 'timezone' => 'default timezone identifier, e.g.: America/New_York', 'optimizations' => -1, // -1: Enable all (default), 0: disable optimizations 'autoescape' => 'html', // Auto-escaping strategy [html|js|css|url|false] 'auto_reload' => true, // Recompile the template whenever the source code changes 'debug' => true, // When set to true, the generated templates have a toString() method 'strict_variables' => true, // When set to true, twig throws an exception on invalid variables ],
文档
请参阅 Mezzio Twig 文档。