gpt4 book ai didi

php - 如何在 Symfony 表达式语言中连接字符串、参数和函数返回结果

转载 作者:行者123 更新时间:2023-12-04 02:08:51 25 4
gpt4 key购买 nike

我正在使用 Symfony 2.4 及其表达式语言组件。在我的一个服务定义中,我想使用带有 type="expression" 的参数。如何使用表达式语言连接以下四个组件:

  1. service('kernel').getCacheDir()一个函数结果
  2. "/" 一个斜线
  3. %router.cache_class_prefix%一个参数
  4. %corebundle.route_provider.cache.class%一个参数

我希望我清楚自己想要实现的目标。下面是我要使用的 services.xml 文件的一部分。但这会引发错误:SyntaxError: Unexpected token "string"of value "/"around position 33.

<parameters>
<parameter key="corebundle.route_provider.cache.class">ZikulaRoutes</parameter>
</parameters>
<services>
<service id="corebundle.route_provider" class="%corebundle.route_provider.class%">
<call method="setCachePath">
<argument type="expression">service('kernel').getCacheDir() "/" %router.cache_class_prefix% %corebundle.route_provider.cache.class%</argument>
</call>
</service>

最佳答案

表达式语言中的串联运算符是波浪字符 ~。此表达式的正确语法是:

service('kernel').getCacheDir() ~ '/' ~ parameter('router.cache_class_prefix') ~ parameter('corebundle.route_provider.cache.class')

关于php - 如何在 Symfony 表达式语言中连接字符串、参数和函数返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21064996/

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