Estoy tratando de analizar la tabla que se muestra here en una matriz php multidimensional. Estoy usando el siguiente código, pero por alguna razón devuelve una matriz vacía. Después de buscar en la web, encontré this site de donde obtuve la función parseTable(). Al leer los comentarios en ese sitio web, veo que la función funciona a la perfección. Así que supongo que hay algo mal con la forma en que recibo el código HTML de file_get_contents(). ¿Alguna idea de lo que estoy haciendo mal?Parse html table using file_get_contents to php array
<?php
$data = file_get_contents('http://flow935.com/playlist/flowhis.HTM');
function parseTable($html)
{
// Find the table
preg_match("/<table.*?>.*?<\/[\s]*table>/s", $html, $table_html);
// Get title for each row
preg_match_all("/<th.*?>(.*?)<\/[\s]*th>/", $table_html[0], $matches);
$row_headers = $matches[1];
// Iterate each row
preg_match_all("/<tr.*?>(.*?)<\/[\s]*tr>/s", $table_html[0], $matches);
$table = array();
foreach($matches[1] as $row_html)
{
preg_match_all("/<td.*?>(.*?)<\/[\s]*td>/", $row_html, $td_matches);
$row = array();
for($i=0; $i<count($td_matches[1]); $i++)
{
$td = strip_tags(html_entity_decode($td_matches[1][$i]));
$row[$row_headers[$i]] = $td;
}
if(count($row) > 0)
$table[] = $row;
}
return $table;
}
$output = parseTable($data);
print_r($output);
?>
Quiero que mi matriz de salida para buscar algo como esto:
1 --> 11:33AM --> DEV --> IN THE DARK 2 --> 11:29AM --> LIL' WAYNE --> SHE WILL 3 --> 11:26AM --> KARDINAL OFFISHALL --> NUMBA 1 (TIDE IS HIGH)
-1 por falta de esfuerzo. Aislar el problema en lugar de, básicamente, la publicación de un enorme bloque de código y preguntando a la gente a la figura repare lo que está mal y arréglelo. – NullUserException