📜  如何在PHP中解析 HTML 文件?

📅  最后修改于: 2022-05-13 01:56:15.963000             🧑  作者: Mango

如何在PHP中解析 HTML 文件?

在本文中,我们将学习在PHP中解析 HTML。

什么是解析?

通常,解析是将一种数据类型转换为另一种数据类型。这意味着我们如何将各种数据类型转换为 HTML。例如:将字符串转换为 HTML。

为什么我们需要解析?

要在PHP代码中的某个点添加动态数据(HTML 内容),我们需要进行解析。例如:要以 HTML 的形式添加数据(信息),我们需要将动态模板制作成字符串,然后将其转换为 HTML。

我们应该如何进行解析?

我们应该使用 loadHTML()函数进行解析。

句法:

loadHTML(string $source,int $options=0)

参数:

  • $source:这个变量是你要解析的 HTML 代码的容器,
  • $options:你可以使用 options 参数来指定额外的 Libxml 参数。

返回值:成功时返回true ,失败时返回false

示例 1:

PHP
loadHTML("

Parsing Html in PHP

");   echo $doc->saveHTML(); ?>


PHP



    
    
      
      

 

      
        Company
        Contact
        Country
      
      
        Alfreds Futterkiste
        Maria Anders
        Germany
      
      
        Centro comercial Moctezuma
        Francisco Chang
        Mexico
      
    
    ';
    $dom = new DomDocument();
    @ $dom->loadHTML($res);
    //DOMElement
    $table = $dom->getElementById('tablepress-3'); 
    //DOMNodeList
    $child_elements = $table->getElementsByTagName('tr'); 
    $row_count = $child_elements->length ;
  
    echo "No. of rows in the table is " . $row_count;
    ?>



输出:

Parsing Html in PHP

示例 2:

PHP




    
    
      
      

 

      
        Company
        Contact
        Country
      
      
        Alfreds Futterkiste
        Maria Anders
        Germany
      
      
        Centro comercial Moctezuma
        Francisco Chang
        Mexico
      
    
    ';
    $dom = new DomDocument();
    @ $dom->loadHTML($res);
    //DOMElement
    $table = $dom->getElementById('tablepress-3'); 
    //DOMNodeList
    $child_elements = $table->getElementsByTagName('tr'); 
    $row_count = $child_elements->length ;
  
    echo "No. of rows in the table is " . $row_count;
    ?>


输出:

No of rows in the table is 3