/******按变量名替换***********/
$originalStr = '这是第一个{$Count},这是第二个{$Target}';
$values = ['Count' => 1, 'Target' => 2];

$replaceStr = preg_replace_callback('/\\{\$([\w\-\/]+)\\}/', function ($matches) use ($values) {

$name = $matches[1];

return array_key_exists($name, $values) ? $values[$name] : '';

}, $originalStr);

echo $replaceStr; // 这是第一个1,这是第二个2



/******按变量顺序替换***********/
$originalStr = '这是第一个{$Count},这是第二个{$Target}';
$values      = [1, 2];

$valueIndex = 0;
$replaceStr = preg_replace_callback('/\\{\$([\w\-\/]+)\\}/', function () use ($values, &$valueIndex) {

$rStr = $values[$valueIndex] ?? '';
$valueIndex ++;
return $rStr;

}, $originalStr);

echo $replaceStr; // 这是第一个1,这是第二个2