PHP实现通过正则表达式替换回调的内容标签

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP实现通过正则表达式替换回调的内容标签。分享给大家供大家参考。具体实现方法如下:

function my_wp_plugin_tag_action($content,$tag,$function,$args = FALSE) {
 // match all regular expressions
 preg_match_all($tag,$content,$matches);
 if (count($matches)>0) {
  // filter duplicates
  $matches = array_unique($matches);
  // loop through
  $tag_results = array();
  $found_tags = array();
  foreach ($matches as $idx => $match) {
   //build arg array
   $full_tag = array_shift($match);
   //call function, adding function output and full tag text to replacement array
   $tag_results[] = my_wp_plugin_buffer_func($function,$match);
   $found_tags[] = $full_tag;
  }
  // replace all tags with corresponding text
  $content = str_replace($found_tags,$tag_results,$content);
 }
 return $content;
}

希望本文所述对大家的php程序设计有所帮助。

相关文章

php获取汉字拼音首字母的方法

现实中我们经常看到这样的说明,排名不分先后,按姓名首字母进行排序。这是中国人大多数使用的排序方法。那么在php程序中该如何操作呢? 下面就分享一下在php程序中获取汉字拼音的首字母的方法...

fgetcvs在linux的问题

看到有人在有汉字的字符串 前加一个 ‘ 或是任意半角符号,让bug将其除掉,不过这样做太麻烦了。最后呢,找来一个模拟fgetcsv功能的函数。 复制代码 代码如下: function _...

php比较两个字符串长度的方法

本文实例讲述了php比较两个字符串长度的方法。分享给大家供大家参考。具体实现方法如下: 这段代码计算两个字符串的长度,然后计算其差值 <?php // This wi...

关于php mvc开发模式的感想

使用mvc开发模式是为了什么?? MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。 我...

Memcached常用命令以及使用说明详解

Memcached常用命令以及使用说明详解

存储命令的格式:<command name> <key> <flags> <exptime> <bytes><data...