我尝试使用Simple HTML DOM Parser从外部网站获取特定文本。这是我的代码:
include('simple_html_dom.php');
$html = file_get_html('http://www.bca.co.id/id/biaya-limit/kurs_counter_bca/kurs_counter_bca_landing.jsp');
foreach ( $html->find('td',13) as $raw) {
echo $raw->plaintext;
}
到目前为止,我得到一行结果:
HKD 1502.30 1470.40
HKD是货币。 1502.30是卖出价,1470.40是买入率。
如何仅获取1502.30值并在另一个PHP文件中使用它?我想这个值可以用来创建自动货币汇率转换。感谢。
答案 0 :(得分:2)
首先找到<tr>
块,遍历子项并检索所需的项目:
foreach ($html->find('tr',5)->children() as $raw) {
$values[] = $raw->plaintext;
}
echo $values[1];
输出:
1502.30
答案 1 :(得分:0)
难道你不能使用爆炸吗? (假设你总是得到像空格那样的输出)
$value = explode(" ",$raw->plaintext);
echo $value[1]; //your desired value
答案 2 :(得分:0)
原始HTML是:
<tr>
<td style="text-align:center;">HKD</td>
<td style="text-align:right;">1502.30</td>
<td style="text-align:right;">1470.40</td>
<!-- kolom dua -->
</tr>
...所以这三个值已经分开了。你显然只是没有存储它们,而只是打印它们:
foreach ( $html->find('td',13) as $raw) {
echo $raw->plaintext;
}
我从未使用过该库,但首先找到<tr>
更有意义。然后,匹配相关值没有问题:
// Completely untested (I even made up the function names)
foreach ($html->find('tr') as $tr) {
$cells = $tr->find('td');
$currency = $cells[0]->getValue();
$sell = $cells[1]->getValue();
$buy = $cells[2]->getValue();
}