Php preg_replace_回调以前置递增的数字

Php preg_replace_回调以前置递增的数字,php,preg-replace-callback,Php,Preg Replace Callback,在字符串中,我有以下子字符串(可以是唯一的或重复的) CX0001 CX0001 CX0001 CX0002 CX0003 CX0123 我想要的是,CX*的每一次出现之前都有一个从1200开始递增的数字。因此,上面的内容变得 1201 CX0001 1202 CX0001 1203 CX0001 1204 CX0002 1205 CX0003 1206 CX0123 CX*字符串始终是包含6个字符的字母数字子字符串。在整个字符串中可以重复,也可以不重复 如何使用preg_replace_cal

在字符串中,我有以下子字符串(可以是唯一的或重复的)

CX0001 CX0001 CX0001 CX0002 CX0003 CX0123

我想要的是,CX*的每一次出现之前都有一个从1200开始递增的数字。因此,上面的内容变得

1201 CX0001 1202 CX0001 1203 CX0001 1204 CX0002 1205 CX0003 1206 CX0123

CX*字符串始终是包含6个字符的字母数字子字符串。在整个字符串中可以重复,也可以不重复


如何使用preg_replace_callback实现这一点,或者是否有更好的方法实现这一点?

下面的示例说明了这一点:

<?php

$content = "this is some CX0001 to Check CX0001 and CX0001 or CX0002 CX0003 CX0003 for the CX0123 that we need CX0123 and CX0001 and see if the same works works";

$count = 1200;
function rep_count($matches) {
  global $count;
  return 'MARKER'.$count++.' '.'CX';
}

$content = preg_replace_callback('/CX/', 'rep_count', $content);
echo $content;
?>