Php 获取区域'的所有标题;使用HTMLDOM解析器

Php 获取区域'的所有标题;使用HTMLDOM解析器,php,html,dom,domparser,Php,Html,Dom,Domparser,尝试获取一个区域的所有title=”“vales,但它只选择页面的主标题。 示例区域html: <area shape="poly" title="Orkney" href="orkney" coords="" /> 我得到的只是页面的标题,这是正确的方式,还是无法完成,谢谢您的帮助:)像这样调用该方法: print_r(getTextBetweenTags($url, 'area')); 因为您正在搜索区域标记。标题是一个论点。您需要查找元素并返回它们的title属性 func

尝试获取一个区域的所有title=”“vales,但它只选择页面的主标题。 示例区域html:

<area shape="poly" title="Orkney" href="orkney" coords="" />

我得到的只是页面的标题,这是正确的方式,还是无法完成,谢谢您的帮助:)

像这样调用该方法:

print_r(getTextBetweenTags($url, 'area'));

因为您正在搜索区域标记。标题是一个论点。您需要查找
元素并返回它们的
title
属性

function getTextBetweenTags($string, $tagname) {
    // Create DOM from string
    $html = str_get_html($string);
    $titles = array();
    // Find all tags 
    foreach($html->find($tagname) as $element) {
        $titles[] = $element->title;
    }
    return $titles;
}

print_r(getTextBetweenTags($url, 'area'));

如果您使用$url作为参数输入,您是否应该使用
file\u-get\u-html()
而不是
str\u-get\u-html()

我对此感到厌倦,但仍然返回空数组:(@user1977434您是否使用url作为参数?将
str\u-get\u-html
更改为
file\u-get\u-html
您可以发布$url的值吗?
function getTextBetweenTags($string, $tagname) {
    // Create DOM from string
    $html = str_get_html($string);
    $titles = array();
    // Find all tags 
    foreach($html->find($tagname) as $element) {
        $titles[] = $element->title;
    }
    return $titles;
}

print_r(getTextBetweenTags($url, 'area'));