用 MySQL 的结果替换字符串

Replace a string with a result from MySQL

我如何将字符串替换为:{snippet:1} 和 MySQL 结果,该结果使用数字(在本例中为 1)到 select 来自 [=17= 的行] ID 为 1?

谢谢

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

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

输出:

1

/s 是分隔符,告诉正则表达式从哪里开始和结束。 \d 是任意数字,+ 是一个量词,告诉它可以有一个或多个数字。 \ 使 {} 变成文字。

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

如果这是 JSON 不过...

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

输出:

1