我想知道是否存在一个检查一个长度的树枝函数,然后,将字符串限制为所需的长度或用空格填充它.
我知道如何使用str_pad和substr并编写一个新的Twig过滤器.但我想知道是否有人可以使用exigsnts twig filter/functions来做到这一点
例如(字符串作为商品的var名称)
{{ "123123123123123"|filter(5) }}
Run Code Online (Sandbox Code Playgroud)
返回"12312"
{{ "12"|filter(5) }}
Run Code Online (Sandbox Code Playgroud)
返回"12_____"(以_作为空格)
您可以使用format带有填充和精度修改器的过滤器:
此示例最多可填充10个字符或将字符串修剪为10个字符:
Default, left padding:
Cuts to 10...
Arbitrary character: {{ "%'_10.10s"|format("123123123123123") }}
Space-Padded: {{ "% 10.10s"|format("123123123123123") }}
Zero-Padded: {{ "%010.10s"|format("123123123123123") }}
... or expands to 10:
Arbitrary character: {{ "%'_10.10s"|format("123") }}
Space-Padded: {{ "% 10.10s"|format("123") }}
Zero-Padded: {{ "%'010.10s"|format("123") }}
Right padding:
Cuts to 10...
Arbitrary character: {{ "%'_-10.10s"|format("123123123123123") }}
Space-Padded: {{ "% -10.10s"|format("123123123123123") }}
Zero-Padded: {{ "%0-10.10s"|format("123123123123123") }}
... or expands to 10:
Arbitrary character: {{ "%'_-10.10s"|format("123") }}
Space-Padded: {{ "% -10.10s"|format("123") }}
Zero-Padded: {{ "%'-010.10s"|format("123") }}
Run Code Online (Sandbox Code Playgroud)
输出:
Default, left padding:
Cuts to 10...
Arbitrary character: 1231231231
Space-Padded: 1231231231
Zero-Padded: 1231231231
... or expands to 10:
Arbitrary character: _______123
Space-Padded: 123
Zero-Padded: 0000000123
Right padding:
Cuts to 10...
Arbitrary character: 1231231231
Space-Padded: 1231231231
Zero-Padded: 1231231231
... or expands to 10:
Arbitrary character: 123_______
Space-Padded: 123
Zero-Padded: 0000000123
Run Code Online (Sandbox Code Playgroud)
请注意,即使添加了对齐修改器,0填充也仅适用于左侧
编辑:TwigFiddle
| 归档时间: |
|
| 查看次数: |
1218 次 |
| 最近记录: |