我正在使用XML加载rss feed。然后我尝试在RSS源中搜索关键字。然后,我需要通过电子邮件向我发送通知,告知它发现了这些关键词及其内容。
示例我有:
$keywords = "iphone|ipad|ipod";
$rss = simplexml_load_file("http://myfeed.com/news?format=xml");
foreach ($rss->entry as $i)
{
//need to check the title tag for the keywords
//email myself a notification with the keywords found
}
UPDATE 好的,我有以下部分工作:
function getPartsWithRegex($text, $regex){
preg_match_all($regex, $text, $array);
return $array[0];
}
$keywords = "LLC|socks";
$rss = simplexml_load_file("http://feeds.myfeed.com/iphoneapps-news?format=xml");
$text = "Downcast - Jamawkinaw Enterprises LLC";
$regex = "/$keywords/i";
foreach ($rss->entry as $i)
{
$title = (string)$i->title;
$productNumbers = getPartsWithRegex($text, $regex);
}
if(count($productNumbers) > 0){
foreach($productNumbers as $productNumber){
echo $productNumber . '<br />';
}
}
else {
echo "Nothing found.";
}
当我传递$ productNumbers = getPartsWithRegex($ text,$ regex)时,这是有效的;但是,当我通过价值为$ i-&gt; title的$ title时,它不起作用。即使我在浏览器中反映出$ title的价值,它也会呈现为:Downcast - Jamawkinaw Enterprises LLC
因此,为了澄清何时我手动输入并传递一个字符串,它的工作正确。但是,当我从读取的XML传递值时,它不会。我已经尝试过转换为字符串,但这不起作用。
任何想法为什么?