我知道这与 SO 有点离题,因为我没有代码而且我的问题很抽象。
我想在 PHP 语言中添加一个功能:
现有功能:
$var=123;
$string = "This is a {$var} variable";
需要 SQL 变量的新功能:
$var="asd' union ()";
$string = "This is a {(QUOTE)$var} quoted variable";
或者:
$var="asd' union ()";
$string = "This is a {QUOTE($var)} quoted variable";
这个想法是扩展字符串 curly 语法以支持函数或一些硬编码函数来引用变量。
我的问题是:
有没有办法编写一个提供这种功能的 php 模块/扩展?
如果是这样,我必须从哪里快速开始?
解决方案
function _quote($v) { return strtoupper($v); }
$_Q = '_quote';
$string = "This is an {$_Q($var)} integer";
echo $string;
我想这是我想要的最接近的,而不必破解 php 本身