preg_match仅适用于字符串

时间:2013-05-22 11:29:11

标签: php wordpress preg-match

我在wordpress中遇到一个非常奇怪的问题。

我将帖子内容作为变量获取,并且我对变量执行preg_match而没有结果。然后当使用作为变量的字符串而不是变量本身时,一切都很完美。这让我疯了,任何人都可以帮助我吗?

// This doesn't work, I checked a thousand times and inside the $content variable 
// is the same string as I use below
$content = the_content();
preg_match('/<iframe.*src=\\"(.*)\\".*><\\/iframe>/is', $content, $matches);
return $matches;

// This works perfect?
$content = the_content();
preg_match('/<iframe.*src=\\"(.*)\\".*><\\/iframe>/is', "this is a string containing <iframe ...", $matches);
return $matches;

1 个答案:

答案 0 :(得分:3)

the_content()只打印字符串。

您应该像get_the_content()这样使用:

$content = get_the_content();
preg_match('/<iframe.*src=\\"(.*)\\".*><\\/iframe>/is', $content, $matches);

http://codex.wordpress.org/Function_Reference/the_content http://codex.wordpress.org/Function_Reference/get_the_content