Preg_Match过滤掉属性[PHP,XML]

时间:2013-06-14 07:23:34

标签: php preg-match

我正在尝试加载xml文档并过滤掉包含(FDS)的每个内容。

我的代码如下:

<?php
     $xml = simplexml_load_file('http://outfits.zwinky.com/users/220/287/_perverted/purchased.xml');

     $pattern = '/zwinky/fds/[^"]*';
     $subject = '$xml';
     preg_match     ( string $pattern    , string $subject    [, array $matches    [, int $flags = 0    [, int $offset = 0   ]]] )
     print_r($matches);?>

任何想法我做错了什么?

1 个答案:

答案 0 :(得分:1)

您不使用preg_match过滤XML,而是使用XPath过滤XML。尝试像

这样的东西
$xml = simplexml_load_file('http://outfits.zwinky.com/users/220/287/_perverted/purchased.xml');
$filtered = $xml->xpath('/zwinky/fds');
// do something on $filtered

XPath /zwinky/fds 返回所有fds个元素。 过滤这些元素的XPath留给读者练习:)。