我想從網頁中的表中獲取值,並且我正在使用Simple HTML Dom庫。這是我的代碼看起來像:使用簡單的HTML Dom庫從網頁獲取值
include('simple_html_dom.php');
$html = file_get_html('http://www.lvbp.com/posicion.html');
$arr = array();
foreach ($html->find('tr') as $e) {
array_push($arr, $e->innertext);
}
echo '<pre>';
print_r($arr);
echo '</pre>';
for ($i = 2; $i < count($arr); $i++) {
str_replace("", "-", $arr[$i]);
print_r($arr[$i]);
}
而且我得到這個作爲輸出時print_r($arr)
:
Array
(
[0] => EQUIPOS J G P Vent
[1] =>
[2] => Navegantes 11 8 3 0
[3] => Tigres 11 8 3 0
[4] => Caribes 11 6 5 2
[5] => Leones 11 6 5 2
[6] => Aguilas 11 5 6 3
[7] => Tiburones 10 4 6 3.5
[8] => Cardenales 10 3 7 4.5
[9] => Bravos 11 3 8 5
)
但是,從這裏我需要分別意爲「納維根特斯」,「11」,「8 「等等......對於每個陣列位置。對於我的最後一個碼:
for ($i = 2; $i < count($arr); $i++) {
str_replace("", "-", $arr[$i]);
print_r($arr[$i]);
}
但它不工作,因爲我得到這個結果爲:
Navegantes 11 8 3 0 Tigres 11 8 3 0 Caribes 11 6 5 2 Leones 11 6 5 2 Aguilas 11 5 6 3 Tiburones 10 4 6 3.5 Cardenales 10 3 7 4.5 Bravos 11 3 8 5
什麼我失蹤?任何幫助?
UPDATE
這是我的代碼看起來像基於建議:
include('simple_html_dom.php');
$html = file_get_html('http://www.lvbp.com/posicion.html');
$arr = array();
foreach ($html->find('tr') as $e) {
$narr = array();
foreach ($e->find('td') as $vp) {
array_push($narr, $vp->plaintext);
}
$arr[] = array($narr);
}
使用$改編[$ i] = str_replace函數( 「」, 「 - 」,$改編[$ i]);而不是str_replace(「」,「 - 」,$ arr [$ i]); – Subin
@Subin改變,但得到相同的結果,沒有破折號( - )之間的單詞 – Reynier
你是否試圖將** td **的每個值作爲數組獲取** tr **? – Subin