答案 0 :(得分:1)
使用PHP5.3,您可以使用匿名功能。
参见此示例
echo preg_replace_callback('/([\w]+)/', function ($matches) {
static $pos = 0;
return sprintf('<li class="beatle_%d">%s</li>', ++$pos, $matches[1]);
}, 'Paul John George Ringo');
答案 1 :(得分:0)
如果你使用的是PHP 5.3,你可以试试preg_replace_callback()
:
$subject = 'Paul John George Ringo';
$n = 0;
echo preg_replace_callback('/([\w]+)/', function($matches) use (&$n) {
return '<li class="beatle_'.(++$n).'">'.$matches[1].'</li>';
}, $subject);