本文实例讲述了PHP实现通过正则表达式替换回调的内容标签。分享给大家供大家参考。具体实现方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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程序设计有所帮助。