在 HTML DOM 中按 Id 获取元素


Get element by Id in HTML DOM

我正在尝试获取某些div的内容 HTML 结构是这样的:

<div id="event-pane" class="class1">
   <div id="e170923" class="class2">
   <div id="e170948" class="class2">
   <div id="e170923" class="class2">

我正在尝试在 xxxxxx 为 $event_id 时获取div id="exxxxxx"

我正在使用file_get_contants和DOM这是我的代码:

<?php
    $event_id = $_GET['eventId'];
    //Get the url
    $url = "static/section35.html";
    $html = file_get_contents($url);
    $doc = new DOMDocument(); // create DOMDocument
    libxml_use_internal_errors(true);
    $doc->loadHTML($html); // load HTML you can add $html
    if($html) {
    $divs = $doc->getElementById('e. $event_id, 0');
    $elements = $doc->getElementsByTagName('tbody');
    $toRemove = array();
    // gather a list of tbodys to remove
    foreach($elements as $el)
      if((strpos($el->nodeValue, 'desktop') !== false) && !in_array($el->parentNode, $toRemove, true))
        $toRemove[] = $el->parentNode;    
            foreach($elements as $el)
      if((strpos($el->nodeValue, 'Recommended') !== false) && !in_array($el->parentNode, $toRemove, true))
        $toRemove[] = $el->parentNode;  
    // remove them
    foreach($toRemove as $tbody)
      $tbody->parentNode->removeChild($tbody);
    echo str_replace(array('style="display: none;','</h3><table','http://www.drakulastream.eu'),array('', '<table',''),$doc->saveHTML());
}
  else {
        echo "<center><h3 style='color:#003366;'>There are no events today</h3></center>";
           }
?>

我不知道代码有什么问题

看起来您刚刚错误地键入了选择器。 应该是这样的:

$divs = $doc->getElementById('e' . $event_id);