Mam taki kod odpowiedzialny za pobranie tagów tabeli i uzyskanie z niej tablicy. Wszystko działa, jeżeli tabela ma nagłówek, wysypuje się, jeżeli go nie ma.
<?php
$domS = new DOMDocument('1.0', 'UTF-8');
$htmlContent = mb_convert_encoding($htmlContent, 'HTML-ENTITIES', 'UTF-8');
$domS->loadHTML($htmlContent);
$DOM = new DOMDocument();
$DOM->loadHTML($htmlContent);
$Header = $DOM->getElementsByTagName('th');
$Detail = $DOM->getElementsByTagName('td');
if($Header) {
foreach($Header as $NodeHeader) {
$aDataTableHeaderHTML[] = trim($NodeHeader->textContent); }
}
$r = 0;
$d = 0;
foreach($Detail as $sNodeDetail) {
$aDataTableDetailHTML[$d][] = trim($sNodeDetail->textContent); $r = $r + 1;
$d = $r % count($aDataTableHeaderHTML) == 0 ?
$d + 1
: $d; }
for($r = 0; $r < count($aDataTableDetailHTML); $r++) { for($d = 0; $d < count($aDataTableHeaderHTML); $d++) { $aTempData[$r][$aDataTableHeaderHTML[$d]] = $aDataTableDetailHTML[$r][$d];
}
}
$array = $aTempData;
?>
Jak najprościej, bez miliona IFów uniezależnić się od braku nagłówka? Mam pomysł, żeby pobrać pierwszy wiersz tabeli...