我使用的代码在两个其他字符串(标记)中搜索字符串。它搜索的字符串是一个ID列表。ID列在标签之间。我的代码可以成功地拉和列出一个ID,但是有一种方法来循环它,让它拉他们所有,并分配给变量或数组?
代码如下:
function get_string_between($string, $start, $end){
$string = " ". $string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string, $end, $ini) - $ini;
return substr($string, $ini, $len);
}
$resumeid = get_string_between($xml, "<ResumeID>", "</ResumeID>");
echo $resumeid;
我尝试使用foreach()函数,但它似乎不起作用:
foreach( $resumeid as $item )
{
echo $item.'<br />';
}
我该如何做到这一点?
您需要循环函数而不仅仅是函数的结果,或者使用正则表达式而不是一系列复杂的字符串函数会容易得多。
preg_match_all("/(<ResumeID>)('w+)(<'/ResumeID>)/", $xml, $matches);
foreach ($matches[0] as $match)
{
echo $match."<br />";
}