新在Symfoob娱乐下载ny 6.2:改进的枚举支持
2022年11月16日,·发表的哈维尔Eguiluz
ob娱乐下载Symfony 6.2是支持通过Les-Tilleuls.coop。Les-Tilleuls.coop是a team of 70+ Symfony experts who can help you design, develop and fix your projects. We provide a wide range of professional services including development, consulting, coaching, training and audits. We also are highly skilled in JS, Go and DevOps. We are a worker cooperative!
ob娱乐下载Symfony介绍PHP枚举支持在Symfony ob娱乐下载5.4,这是2021年11月发布。在Syob娱乐下载mfony 6.2我们继续添加枚举支持在不同部分的代码。
枚举作为服务参数
除了服务对象,容器还拥有配置,叫做服务参数。他们支持各种PHP类型(整型、布尔值、数组、字符串、常数,等等)在Symfony 6.2中,当使用PHP配置服务,你可以在这些参数包括枚举值:ob娱乐下载
1 2 3 4 5 6 7 8 9 10 11 12
/ /配置/ services.php名称空间ob娱乐下载\组件\DependencyInjection\加载程序\配置器;使用应用程序\实体\博客;返回静态函数(ContainerConfigurator美元容器){美元容器- >参数()/ /……- >集(“app.some_parameter”,SomeEnum::Foo)- >集(“app.another_parameter”,(SomeEnum::Foo, SomeEnum::酒吧]);};
枚举在YAML文件
提供的
尼古拉斯Grekas
在# 46771。
之前在PHP功能只能在定义服务。这就是为什么在Symfonyob娱乐下载 6.2我们还添加了引用的支持PHP枚举在YAML文件使用特殊的前缀php /枚举!
。
前面的示例使用YAML时看起来如下:
1 2 3 4 5
#配置/ services.yaml参数:#……app.some_parameter:php !/枚举SomeEnum: Fooapp.another_parameter:[! php /枚举SomeEnum:: Foo,php !/枚举SomeEnum:酒吧):
枚举在环境变量
的环境变量的处理器Symfony提供了转换ob娱乐下载env var值(只能是字符串)到您的应用程序所需的其他类型的值(布尔值、PHP常数,JSON文件,等等)。
在Syob娱乐下载mfony 6.2我们添加一个新的env(枚举:……)
处理器将env var变成PHP BackedEnum类型。想象你有这个枚举中定义您的项目:
1 2 3 4 5 6 7
# src / Enum / AppEnvironment.php字符串枚举AppEnvironment: {情况下发展=“开发”;情况下生产=“刺激”;情况下分段=“舞台”;情况下测试=“测试”;}
YAML中,XML或PHP配置,您现在可以使用这样的:
1 2 3
#配置/ services.yaml参数:app.some_parameter:' % env(枚举:App \ enum \ AppEnvironment: APP_ENV) %’
中存储的值APP_ENV
env var将是一个字符串“开发”
但是应用程序将使用AppEnvironment:发展
枚举值。
发表在#生活在边缘