Javascript PHP简单HTML DOM解析器不将alt标记显示为文本

Javascript PHP简单HTML DOM解析器不将alt标记显示为文本,javascript,php,html,simple-html-dom,Javascript,Php,Html,Simple Html Dom,实际上,我希望“ul id=“slider356”中包含的所有alt标记内容都显示为文本,但我的代码不起作用。有人能帮我吗 谢谢要完成肖恩的评论,有两种方法可以获取属性值: $node->attribute; $node->getAttribute('attribute'); 因此,在您的情况下,尝试以下方法: <? include('simple_html_dom.php'); // Create DOM from URL or file $html = file_get_html('

实际上,我希望“ul id=“slider356”中包含的所有alt标记内容都显示为文本,但我的代码不起作用。有人能帮我吗


谢谢

要完成肖恩的评论,有两种方法可以获取属性值:

  • $node->attribute;
  • $node->getAttribute('attribute');
  • 因此,在您的情况下,尝试以下方法:

     <?
    include('simple_html_dom.php');
    // Create DOM from URL or file
    $html = file_get_html('http://www.saie.bolognafiere.it/it/partner/media-partner');
    
    // Find all images 
    foreach($html->getAttribute('ul#slider356 alt') as $element) 
           echo $element->plaintext . '<br>';
    ?>
    
    $html=file\u get\u html('http://www.saie.bolognafiere.it/it/partner/media-partner');
    //查找ul#slider356中的所有图像
    foreach($html->find('ul#slider356 img')作为$element)
    //打印alt值
    echo$element->alt.“
    ”; //$element->getAttribute('alt')也可以使用


    请查看更多信息…

    我更喜欢
    DOMDocument
    而不是
    simple\u html\u dom
    ,但我相当肯定
    getAttribute
    不会那样工作……根据文档()我想你想要
    foreach($html->find('ul#slider356')作为$element)echo$element->alt.
    。尽管除非html无效,否则它只有一个结果作为ID(
    #slider356
    )应该是唯一的。
    alt
    img
    标记的一个属性,在
    a
    标记中,在
    li
    标记中,在
    ul\slider356
    标记中。您的选择器需要反映这一点。属性和元素是不同的-@Sean的注释显示了访问属性的正确方式
    $html = file_get_html('http://www.saie.bolognafiere.it/it/partner/media-partner');
    
    // Find all images inside ul#slider356
    foreach($html->find('ul#slider356 img') as $element)
        // Print alt value
        echo $element->alt . "<br/>";
        // $element->getAttribute('alt') should work as well