ホームページ >バックエンド開発 >PHPチュートリアル >PHP の専門家の方、このコードが何を意味するのかを理解するのを手伝ってください。

PHP の専門家の方、このコードが何を意味するのかを理解するのを手伝ってください。

WBOY
WBOYオリジナル
2016-06-13 12:47:09888ブラウズ

PHP の専門家の方、このコードの意味を調べるのを手伝ってください

<br />
function apply_filters($tag, $value) {<br />
	global $wp_filter, $merged_filters, $wp_current_filter;<br />
<br />
	$args = array();<br />
<br />
	if ( isset($wp_filter['all']) ) {<br />
		$wp_current_filter[] = $tag;<br />
		$args = func_get_args();<br />
		_wp_call_all_hook($args);<br />
	}<br />
<br />
	if ( !isset($wp_filter[$tag]) ) {<br />
		if ( isset($wp_filter['all']) )<br />
			array_pop($wp_current_filter);<br />
		return $value;<br />
	}<br />
<br />
	if ( !isset($wp_filter['all']) )<br />
		$wp_current_filter[] = $tag;<br />
<br />
	if ( !isset( $merged_filters[ $tag ] ) ) {<br />
		ksort($wp_filter[$tag]);<br />
		$merged_filters[ $tag ] = true;<br />
	}<br />
<br />
	reset( $wp_filter[ $tag ] );<br />
<br />
	if ( empty($args) )<br />
		$args = func_get_args();<br />
<br />
	do {<br />
		foreach( (array) current($wp_filter[$tag]) as $the_ )<br />
			if ( !is_null($the_['function']) ){<br />
				$args[1] = $value;<br />
				$value = call_user_func_array($the_['function'], array_slice($args, 1, (int) $the_['accepted_args']));<br />
			}<br />
<br />
	} while ( next($wp_filter[$tag]) !== false );<br />
<br />
	array_pop( $wp_current_filter );<br />
<br />
	return $value;<br />
}<br />


<br />
function the_permalink() {<br />
	echo apply_filters('the_permalink', get_permalink());<br />
}<br />

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。