[英]How to extract data from an HTML string in PHP
我有下面的HTML字符串,我需要在其中訪問特定id
的值。
字符串如下
<form name="aspnetForm" method="post" action="userview.aspx" id="aspnetForm"> <div> <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> <input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" /> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="test_value" /> </div>
現在為了訪問它,我編寫了以下代碼
$doc = new DOMDocument(); @$doc->loadHTML($str); $finder = new DomXPath($doc); $spanner = $finder->query("//*[contains(@id, '__VIEWSTATE')]"); foreach ($spanner as $node) { echo $node->nodeValue; }
其中str
是我的字符串。 現在,每次我運行它時,它都會返回一個空白值
在此query
嘗試此部分已修改
$html = '<form name="aspnetForm" method="post" action="userview.aspx" id="aspnetForm">
<div>
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="adsadsadsdsadsd" />
</div>';
$doc = new DOMDocument;
$doc->loadHTML($html);
$xpath = new DOMXpath($doc);
$val= $xpath->query('//input[@type="hidden" and @id = "__VIEWSTATE"]/@value'
);
print_r($val[0]->nodeValue);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.