如何在PHP中的HTML标记之间提取文本

时间:2017-02-28 03:44:38

标签: php html

我想在远程网页源代码的HTML标记中获取不同的数据并将其放在变量下:

这是我需要数据的源代码的一部分:

<h1>John Doe</h1> 
<p>Promotion: A.Sc. 2</p> 
<p>Campus de Paris</p> 

这是我想要的结果:

$prenom='John' 
$nom='Doe' 
$promotion='A.Sc. 2' 
$campus='Paris' 

有关信息,我在Android的Xamarin应用程序中使用它,通过他的id获取用户的信息,并通过php脚本将其发送到数据库。对于数据库部分,它还可以,但我对正则表达式一无所知(我认为网络可以正确使用正则表达式吗?)

1 个答案:

答案 0 :(得分:1)

您应该使用The DOMDocument class

实施例:     

$html= "<p>hi</p>
<h1>H1 title</h1>
<h2>H2 title</h2>
<h3>H2 title</h3>";
 // a new dom object 
 $dom = new domDocument('1.0', 'utf-8'); 
 // load the html into the object ***/ 
 $dom->loadHTML($html); 
 //discard white space 
 $dom->preserveWhiteSpace = false; 
 $hTwo= $dom->getElementsByTagName('h2'); // here u use your desired tag
 echo $hTwo->item(0)->nodeValue; 
 //will return "H2 title";
 ?>

请参阅DOM Parsing

示例:

// SimpleHtmlDom example
// Create DOM from URL or file
$html = file_get_html('http://localhost/blah.php');

// Find all paragraphs 
foreach($html->find('p') as $element) 
       echo $element->innerText() . '<br>';
相关问题