尝试从网站解析价格。我已经可以从源代码中检索标题,但是当我试图降低价格时,我会收到通知。 注意:未定义的偏移量:1 这是代码:
<?php
$file_string = file_get_contents('http://finance.google.com');
preg_match('/<title>(.*)<\/title>/i', $file_string, $title);
$title_out = $title[1];
preg_match('~<span id="ref_658274_l">(.*)</span>~', $file_string, $price);
//error on the line below
$price_out = $price[1];
?>
<?php echo "$title_out"; ?>
<?php echo "$price_out"; ?>
答案 0 :(得分:0)
$doc = new DOMDocument();
$doc->loadHTML(file_get_contents('http://finance.google.com'));
$titleElems = $doc->getElementsByTagName('title');
if ($titleElems->length) {
$title = $titleElems->item(0)->nodeValue;
}
$priceElem = $doc->getElementById('ref_658274_l');
if ($priceElem != null) {
$price = $priceElem->nodeValue;
}
答案 1 :(得分:0)
您的正则表达式不匹配。使用结果时,您应始终验证您使用的索引(在本例中为1
)是否在array
的范围内。