0
$str = "<p><example:wow id='test' style='hello' /></p>";

preg_match_all ("/<example:wow(.*)[^>]>/", $str, $matches);

我的 $matches[0] 说那里有数据(字符串长度 43)但屏幕上没有字符串输出。

数组(1){[0]=>字符串(43)“”}

如果我删除<单词 example 之前的 from:我可以在 $matches[0] 上看到输出。为什么我没有真正得到 $matches[0] 的字符串值<?无论哪种情况,我的 $matches[1] 都很好,但我需要捕获所有 $matches[0]。

4

1 回答 1

0

您没有在屏幕上获取数据可能是因为浏览器正在尝试呈现未知的 html/xml 标记:

使用您的代码,我在 $matches 上得到了这个结果:

Array
(
    [0] => Array
        (
            [0] => <example:wow id='test' style='hello' /></p>
        )

    [1] => Array
        (
            [0] =>  id='test' style='hello' /></
        )

)

因此,出于调试原因,请尝试:

print_r ($matches);
于 2013-06-08T21:33:01.183 回答