gpt4 book ai didi

php - 为 SQL 参数提供占位符值

转载 作者:行者123 更新时间:2023-11-29 10:42:22 25 4
gpt4 key购买 nike

问题:

我正在使用一个框架,该框架在很多时候提供像这样的查询:

$sql = "select $sArticleTable.* from table_A left join " .
"$sArticleTable on table_A.objectid=$sArticleTable.id " .
"where table_A.articlenid = $sArticleId " .
"and $sArticleTable.id is not null and " . $object->someMoreSQL() .
"order by table_A.sort";

如您所见,通过 $sArticleTable 变量插入一个表名称。尽管我非常讨厌这种编写 MySQL 语句的方式,但现在我对此无能为力。

这种编写语句的方式会阻止 PhpStorm 正确识别表名称,因此不会显示自动完成建议。

如何为 PhpStorm 变量 $sArticleTable 提供占位符值,以便它再次提供自动完成建议?

我已在设置中尝试了数据库 -> 用户参数,但没有提示我输入占位符值。

我还知道我可以简单地将变量替换为正确的表名,调整 SQL,然后重新输入变量。但这似乎相当不专业,因为我认为 PhpStorm 可能会在这里提供解决方案。

此外,由于我已经在调整 SQL,所以我完全可以以更合适的方式重写该语句。对于这样一个相对较小的声明,我最终可能会这样做。然而,有更大的语句会占用大量时间来重写。

最佳答案

ATM机没有办法做到这一点。我在这里可能是错的......但它可能仅在最新的2017.2版本中支持Joomla(考虑到它们的特定语法)..但没有其他通用方式(它适用于表名或表名前缀)。

以下是有关此主题的一些相关票证 - 观看它们(星标/投票/评论)以获取有关任何进展的通知:

<小时/>

P.S. 如果您不喜欢这样的 SQL 错误(IDE 显示它们的事实),那么您可以告诉 IDE 将此字符串视为纯文本(因此没有 SQL 颜色/错误)--将 /** @lang Text */ 放在字符串左引号之前。

关于php - 为 SQL 参数提供占位符值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45235048/

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