PHP简单DOM解析器从两个url中提取单个值
问题描述:
我使用dom解析器从两个具有相同li
类的html文档中抓取文本,并且检索到了一个double值。PHP简单DOM解析器从两个url中提取单个值
<?php
include_once('simple_html_dom.php');
$links = array (
"Model_one" => "car.html",
"Model_two" => "car/edition.html"
);
foreach ($links as $key=>$link) {
$html = file_get_html($link);
$ret[] = $html->find('ul li[class=dotCar]',0)->plaintext;
$pattern = '/.\d+(?:\.\d{2})?((?<=[0-9])(?= usd))/';
preg_match_all($pattern, $ret[0], $result);
$price = array();
foreach($result[0] as $k=>$v) {
$price[] = $v;
echo $price[0];
}
}
// $price[0]= 10.55 11
?>
我怎样才能在model_key
从$links
阵列关联重视$price
以获得结果:
model_one 10.55
model_two 11.00
这样我可以检索单个值在MySQL表中插入。
答
也许是这样的:
foreach($result as $k=>$v) {
//$v is the price (10.55 etc.)
foreach($links as $kk=>$vv) {
//$vv is the link (model_one etc.)
$priceAndLinks[$vv] = $v;
}
}
这可能给你所需要的逻辑的想法。
'$ html-> find('ul li [class = dotCar]',0) - > plaintext'返回什么? – Enissay
一串字母和数字 – user3332537
嗯,当然我猜想,请在两种情况下发布确切的输出,以便我可以帮助您重新塑造代码... – Enissay