我正试图从外部网页中提取两条数据。页面上有两个标签,我需要的数据都在两者之内。
如何从两个标签获取数据?
我尝试了一些不同的东西,但似乎都没有效果。这是我上次尝试的内容:
$dom = new DOMDocument;
$dom->loadHtmlFile('url');
$xpath = new DOMXPath($dom);
$elements = $xpath->query('b');
if ($elements->length) {
echo "found: ", $elements->item(0)->getAttribute('value');
} else {
echo "not found";
}
答案 0 :(得分:0)
正则表达式并不总是答案,事实上对于我的整个网络平台,我的PHP中有不到十几个正则表达式实例。
$p = explode($elements,'<b>')[1];
$p = explode($p,'</b>)[0];
答案 1 :(得分:0)
使用:
<?php
$str = "This is a test string <b>I want this sub string</b> this is a test string.";
preg_match("~".preg_quote("<b>")."(.*?)".preg_quote("</b>")."~", $str, $output);
echo $output[1];
?>
输出:
I want this sub string
答案 2 :(得分:0)
试试这个:
function get_str_btwn($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);
}
$dom=file_get_contents('url');
echo get_str_btwn($dom,"<b>","</b>");