从网站查找HTML部件

时间:2014-02-07 18:38:50

标签: php html string preg-match preg-match-all

我只是想找到一个HTML部分。那里有两张表,他们都以一篇文字“Vertretungsplan”开头。因此,我的函数中有一部分可以找出HTML-String存在于哪个部分。但是这个功能不应该做什么。 前两个preg_match_all给出了错误的数字!但是strpos和strripos也不起作用。 这是代码:

<?php
function faellt($kursnr, $stunde) {
    $zahl = 0;
    if ($stunde == "2") {
        $stunde = "3";
    }
    elseif ($stunde == "3") {
        $stunde = "5";
    }
    elseif ($stunde == "4") {
        $stunde = "7";
    }
    elseif ($stunde == "5") {
        $stunde = "9";
    }
    $file = file_get_contents("vertretungsplan.html");
    $quellcode = preg_replace("/.*<body[^>]*>|<\/body>.*/si", "", $file);
    preg_match_all('%<tr><td class="KlasseNeu">Q1<br></td><td class="StundeNeu">'.$stunde.'<br></td><td class="FachNeu">'.$kursnr.'<br></td><td class="RaumNeu"><br></td><td class="AnmerkungNeu">fällt aus<br></td></tr>%s', $quellcode, $treffer);
    preg_match_all('%<tr><td class="KlasseNeu">Q2<br></td><td class="StundeNeu">'.$stunde.'<br></td><td class="FachNeu">'.$kursnr.'<br></td><td class="RaumNeu"><br></td><td class="AnmerkungNeu">fällt aus<br></td></tr>%s', $quellcode, $treffer2);
    $zahl = count($treffer) + count($treffer2);
    //$zahl = $zahl - 2;

    if ($zahl != 0) {
        /*preg_match_all("/Vertretungsplan/",$quellcode,$ausgabe, PREG_OFFSET_CAPTURE);
        $erster = $ausgabe[0];
        $zweiter = $ausgabe[1];*/

        $erster = strpos($quellcode, "/Vertretungsplan/");
        $zweiter = strripos($quellcode, "/Vertretungsplan/");

        if ($erster != $zweiter) {
            $erst = strpos($quellcode, $kursnr);
            if ($erst > $erster AND $erst < $zweiter) {
                $faellt = "eins";
            }
            elseif (§erst > $zweiter) {
                $faellt = "zwei";
            }
        }
        elseif ($erster == $zweiter) {
            $faellt = "eins".$quellcode;
        }
    }
    else {
        $faellt = "false";
    }
    return $faellt;
}
?>

0 个答案:

没有答案