如何在php中使用html dom提取特定单词后的特定字符串。我有
<div class="abc">
<script type="text/javascript">
var flashvars = { word : path } </script>
现在我想提取单词后面的路径
答案 0 :(得分:0)
感谢您的回复。 我得到了我正在寻找的解决方案。
以下是有人需要的代码。
Explanation :
'$results' is the curl response.
Enter div class name (which you want to fetch) inside "$xpath->query() function"
You will get source code for entire class inside "$tag->textContent"
$dom = new DOMDocument();
$dom->loadHTML($results);
$xpath = new DOMXPath($dom);
$tags = $xpath->query('//div[@class="e"]');
foreach ($tags as $tag)
{
echo "<br>----------<br>";
var_dump($tag->textContent);
echo "<br>----------<br>";
}
现在你有了所需的课程&#39;内部的html源&#34; $ tag-&gt; textContent&#34;。
现在你可以从&#34; start&#34;之间的字符串中取任何东西。和&#34;结束&#34;使用以下功能点。
function get_string_between($string, $start, $end){
$string = ' ' . $string;
$ini = strpos($string, $start);
if ($ini == 0) return '';
$ini += strlen($start);
$len = strpos($string, $end, $ini) - $ini;
return substr($string, $ini, $len);
}
就我而言,我这样使用它:
$price = get_string_between($tag->textContent,'swf', '+');
echo $price;
这里&#34; swf&#34;是路径的起点,&#34; +&#34;是终点。 希望它节省别人的时间:))