用MySQL中的结果替换字符串


Replace a string with a result from MySQL

如何用MySQL结果替换像{snippet:1}这样的字符串,该结果使用数字(在本例中为1)从ID为1的表中选择行?

感谢

我会使用正则表达式for从字符串中分离出整数。

$string = '{snippet:1}';
preg_match('/'{snippet:('d+)'}/', $string, $match);
echo $match[1];

输出:

1

/是分隔符,用于指示正则表达式的起始和结束位置。'd是任何数字,+是一个量词,告诉它可以有一个或多个数字。'正在使{}成为文字。

Regex101演示:https://regex101.com/r/cB9oN1/1

如果这是JSON。。。

$string = '{"snippet":"1"}';
$json_value = json_decode($string);
echo $json_value->snippet;

输出:

1