gpt4 book ai didi

php - 如何使用 Twig 生成随机字符串?

转载 作者:可可西里 更新时间:2023-11-01 00:02:17 25 4
gpt4 key购买 nike

我有一个包含优惠券代码的输入。用户可以填写自定义代码,但我想给他们一个默认代码。我现在有以下代码:

<input type="text" name="code" value="{{ form.code|default(RANDOM_CODE) }}">

我想用随机字符串替换 RANDOM_CODE

我认为这与问题无关,但 form.code 包含原始优惠券代码。我使用相同的表格进行编辑。

根据 Twig 文档,可以使用 random() 生成随机数,甚至可以使用 random('abcdefgh...'),但我想生成一个具有特定长度的随机字符串。

我知道我至少可以使用两种方法来做到这一点:

  1. 在 Controller 中生成默认的随机代码,然后将其传递给 View ;或
  2. 创建一个带有为我生成随机字符串的函数的 Twig 扩展。

知道我很好奇是否有一种方法可以仅使用 Twig 的内置函数生成随机字符串。

最佳答案

此代码将生成一个 10 个字符的 base64 密码(A 到 Z 大小写,0 到 9,破折号和下划线)。这也使它的 url 友好。如果您愿意,可以根据自己的喜好更改参数。

{% set randomPassword = [] %}
{% set alpha = 'abcdefghijklmnopqrstuvwxyz' %}
{% set numbers = '0123456789' %}

{% for i in 1..10 %}
{% set randomCharacter = random(alpha ~ alpha|upper ~ numbers ~ '-_') %}
{% set randomPassword = randomPassword|merge([randomCharacter]) %}
{% endfor %}
{% set randomPassword = randomPassword|join %}


{{ randomPassword }}

关于php - 如何使用 Twig 生成随机字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32911102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com