-------------- EDYCJA ------------------------Tablica HTML do zestawu php
Więc idę z podejściem DOM. Oto, co mam do tej pory:
<?php function getdata(){
$contents = file_get_contents('internatdata.htm');
//create a DOM based off of the string from the html table
$DOM = new DOMDocument;
$DOM->loadHTML($contents);
//get all tr and td
$items = $DOM->getElementsByTagName('tr');
$tds = $DOM->getElementsByTagName('td');
function tdrows($elements){
$str = "";
for ($ii =0; $ii < $elements->length; $ii++){
$str .= $elements->item($ii)->nodeValue . ",";
}
return $str;
}
for ($i = 0; $i < $items->length; $i++){
echo tdrows($tds) . "; <br />";
}
}
?>
Problem, który mam jest to, że chcę tylko wybrać td z każdego wiersza tabeli. Próbuję to osiągnąć za pomocą zagnieżdżonej pętli. Niestety Drukuje tekst każdego tagu na stronie, ilekroć są znaczniki. jak mogę to uzyskać, więc tylko drukowanie td każdego tr, a nie każdego td na dom?
Potrzebuję używać tabeli html jako źródła moich danych, ponieważ nie mam dostępu do bazy danych. Myślę, że jestem w stanie przesyłać dane z tabeli html Potrzebuję utworzyć funkcję do konwersji tabeli na tablicę lub tablicę wielowymiarową.
Mam podstawową ideę, myślę, ale potrzebuję pomocy w zakończeniu kodu, aby zwrócić tablicę opartą na tabeli html.
Także jeśli masz lepszy sposób robi to inna niż konwersja tabelę do tablicy to proszę dać mi znać
Oto pomysł miałem do tej pory:
<?php
function getdata(){
$contents = file_get_contents('data.htm');
//add delimiters (semicolon for a row and comma for a cell) ???
$stripped = strip_tags($contents);
//explode into an array based off the delimiters above ???
}
?>
Najlepszym sposobem byłoby użyć parsera DOM, na przykład http://php.net/manual/en/book.dom.php – jli
http: //stackoverflow.com/questions/3627489/php-parse-html-code –
Czy "data.htm" zawiera tylko tabelę i jej zawartość, czy jest to pełna strona html z wieloma dodatkowymi elementami? W każdym razie twój kod wciąż nie zawiera całej części związanej z parsowaniem elementów tabeli. IMO, szukałbym alternatywnego sposobu: nie podoba mi się pomysł czytania tabeli html. – jap1968