Search code examples
phphtmlsimple-html-dom

php simple html dom parse img html5 attributes?


How to use simple html dom parse img html5 attribute: data-original

$htmls = '<img class="lazy" alt="Nubifragio a Verbania , ferite 2 turiste  Gravi danni, chiesto stato di calamità    foto" title="Nubifragio a Verbania , ferite 2 turiste  Gravi danni, chiesto stato di calamità    foto" data-original="http://www.repubblica.it/images/2012/08/26/130634575-506cc9ae-11b8-4a53-920c-539a3811e46b.jpg" src="http://www.repubblica.it/static/images/homepage/2012/lazy.png" width="130" height="98" style="display: inline; ">';
$html = str_get_html($htmls);
$fata = $html->find('img'); 
foreach($fata as $newimage){
    echo $newimage->data-original; //0
    echo $newimage->src; //http://www.repubblica.it/static/images/homepage/2012/lazy.png
}

I could get the attribute src, but data-original return 0


Solution

  • $newimage->data-original;
    

    means

    $newimage->data - original;
    

    A way round this is to try:

    $property = 'data-original';
    $newimage->$property;
    

    or, to use the alternative syntax:

    $newimage['data-original'];