从getElementByTagName函数获取一个表

时间:2017-01-12 10:56:33

标签: php domdocument getelementsbytagname

我要从网页中提取表格,然后将此表格复制到PDF文档中。 对于提取图像,我编写了以下代码:

$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTMLFile("http://www.pecso.it/prodotto/741drinkflex-piatto-nondiv/");
$images_links = [];
$i=0;
$divTags = $dom->getElementsByTagName('div');
if (!is_null($divTags)) {
    foreach ($divTags as $div_tag) {
        if ($div_tag->hasAttribute('class') &&
            $div_tag->getAttribute('class') == 'certificazioni') {
            if ($div_tag->hasChildNodes()) {
                foreach($div_tag->childNodes as $c) {
                    if ($c->nodeName == 'a') {
                        if ($c->hasChildNodes()) {
                            foreach($c->childNodes as $cc){
                                if ($cc->nodeName == 'img') {
                                    if ($cc->hasAttribute('src')) {
                                        $src_value = $cc->getAttribute('src');
                                        $images_links[$i] = $src_value;
                                        $i++;
                                    } 
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

然后,我使用类似src属性创建了一些img标签,保存在$images_links中的值。代码如下:

foreach ($images_links as $image_link) {
?>
<img src="<?php echo $image_link ?>" />
<?php } ?>

但是,对于表格,我不会尝试这样做,因为它应该太长而且复杂,因为我要保存每个属性,每个值等等。 我可以操纵$tableTags对象在我的PDF文档上创建此表的精确副本(标记,属性,内容..)吗?你能帮帮我吗?

0 个答案:

没有答案