php - TYPO3 中的提取值
问题描述
我想使用 TYPO3 的学说来更新我的网站。但是在我的命令中,我想使用一个ExtractValue,并且学说把这个参数理解为一个字段,而不是一个sql的函数。
这是我的代码:
$statement = $queryBuilder
->addSelectLiteral(
)
...
->where(
$queryBuilder->expr()->eq('ExtractValue(n.flexform, \'//field[@index="erasmusStatus"]/value[@index="vDEF"]\')', 1);
)
结果在 SQL 中:
... WHERE (`'ExtractValue(n`.`flexform, \'//field[@index=\"erasmus\"]/value[@index=\"vDEF\"]\')'` = 1))
您可以看到 SQL 像字段一样采用“ExtractValue(n”)。
但我想要 :
...WHERE ('ExtractValue(`n`.`flexform`, \'//field[@index=\"erasmus\"]/value[@index=\"vDEF\"]\')' = 1))
您知道执行此操作的 QueryBuilder 或表达式吗?谢谢
解决方案
把它变成一个字符串怎么样?
...
->where(
$queryBuilder->expr()
->eq('ExtractValue(`n.flexform`,
//field[@index="erasmusStatus"]/value[@index="vDEF"]\')',
1);
)
推荐阅读
- docker - 在 Alpine nginx docker 镜像上设置 fancyindex
- javascript - 刻度内文本之间的间距
- nginx - 具有多个域的 NGINX 动态重定向
- brainfuck - 如何打印“1989 年 6 月 4 日发生了什么?” 在BrainFuck?
- powerbi - Power BI 临时文件?
- javascript - 使用 Object.setPrototype() 修补同一文档中的混合 HTML 和 XML 元素
- android - Flutter:com.it_nomads.fluttersecurestorage 包不存在
- linux-kernel - lockdep 在 preempt-rt linux 内核中有用吗?
- node.js - PassportJS 没有在本地重定向
- javascript - 按下按钮 5 次结束过程并输出结果