php中preg_replace_callback函数同一个正则,替换成不同内容

可以使用php在线运行,去运行文章的代码
https://www.bejson.com/runcode/php/
本文实例讲述了php中preg_replace_callback函数用法。分享给大家供大家参考,具体如下:

mixed preg_replace_callback ( mixed pattern, callback callback, mixed subject [, int limit] )

本函数的行为几乎和 preg_replace() 一样,除了不是提供一个 replacement 参数,而是指定一个 callback 函数。该函数将以目标字符串中的匹配数组作为输入参数,并返回用于替换的字符串。

例如问题:

preg_replace($skx,$imsz2,$neirong);

如:$neirong中有多个$skx 我需要每次替换都能得到一个不同的ID

示例:

<?php
$str='this is a test for this string includes many this';
$replace='/this/x';
$result=preg_replace_callback(
  $replace,
  function($ms){
   static $i;
   $i=$i+1;
   return "that($i)";
  },
  $str
 );
echo $result,"/n";
posted @ 2023-02-23 23:39  风意不止  阅读(112)  评论(0编辑  收藏  举报