繁体   English   中英

创建DOMDocument:匹配PHP解析器中的某个元素

[英]Creating DOMDocument: match one certain element in a PHP-parser

晚上好,亲爱的社区,

好吧,首先:Felize Navidad-我希望你圣诞快乐! 在我的淡季中,我正在研究一些解析器脚本。

今天,我正在尝试在php中调试一个DOMDocument对象。 理想情况下,如果我能使DOMDocument以类似数组的格式输出,将数据存储在数据库中,那就太好了!

我的示例: 转到url-参见示例:目标

我想过滤出块中的数据:

Schulart: BBS
Schulnummer:60119
Anschrift: Berufsbildende Schule Boppard Antoniusstr. 21; 56154 Boppard
Telefon: (0 67 42) 80 61-0
Telefax: (0 67 42) 80 61-29
E-Mail: sekretary@bbs-boppard.de
Internet: website 
Träger:Kreisverwaltung Rhein-Hunsr�ck-Kreis
letzte Änderung: 08 Feb 2010 14:33:12 von 60119

我已经研究了源代码-并发现感兴趣的属性应该是这样的: class="content"div class="content"><!-- TYPO3SEARCH_begin -->甚至更好: wfqbeResults

因此,如果我运行DOMDucument方式,可以这样使用:

$dom->getElementById('wfqbeResults');

这里的代码是:-我的足迹

<?php

$dom = new DOMDocument();
@$dom->loadHTMLFile(' -> here the website goes in<- ');
$divElement = $dom->getElementById('wfqbeResults');

$innerHTML= '';
$children = $divElement->childNodes;
foreach ($children as $child) {
   $innerHTML .= $child->ownerDocument->saveXML( $child );
} 
echo $innerHTML;

<?

Duhh:这会输出大量垃圾。 无论如何,该代码会吐出很多html。 我必须仔细检查一下代码,才能从解析器中获得所需的9行:

目标是什么:我想了解以下内容:

一种。 9行带有9个标签和9个值。 b。 我想准备输出以将其存储在MySQL-DB中!

期待一些提示零问候

这是返回格式化数组中的标签和值以准备输入mysql的解决方案!

<?php

$dom = new DOMDocument();
@$dom->loadHTMLFile('http://schulen.bildung-rp.de/gehezu/startseite/einzelanzeige.html?tx_wfqbe_pi1%5buid%5d=60119');
$divElement = $dom->getElementById('wfqbeResults');

$innerHTML= '';
$children = $divElement->childNodes;
foreach ($children as $child) {
$innerHTML = $child->ownerDocument->saveXML( $child );

$doc = new DOMDocument();
$doc->loadHTML($innerHTML);
//$divElementNew = $dom->getElementsByTagName('td');
$divElementNew = $dom->getElementsByTagname('td');

    /*** the array to return ***/
    $out = array();
    foreach ($divElementNew as $item)
    {
        /*** add node value to the out array ***/
        $out[] = $item->nodeValue;
    }

echo '<pre>';
print_r($out);
echo '</pre>';

} 

?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM