Open In App

How to extract img src and alt from html using PHP?

Improve
Improve
Like Article
Like
Save
Share
Report

Extraction of image attributes like ‘src’, ‘alt’, ‘height’, ‘width’ etc from a HTML page using PHP. This task can be done using the following steps.

  • Loading HTML content in a variable(DOM variable).
  • Selecting each image in that document.
  • Selecting attribute and save it’s content to a variable.
  • Output as HTML img object or as plain values as required.

Example 1: This example displays the image object as output.




<?php
// error_reporting(0);
    
function crawl_page($url) {
  
    $dom = new DOMDocument('1.0');
      
    // Loading HTML content in $dom
    @$dom->loadHTMLFile($url);
      
    // Selecting all image i.e. img tag object
    $anchors = $dom -> getElementsByTagName('img');
      
    // Extracting attribute from each object
    foreach ($anchors as $element) {
          
        // Extracting value of src attribute of
        // the current image object
        $src = $element -> getAttribute('src');
          
        // Extracting value of alt attribute of
        // the current image object
        $alt = $element -> getAttribute('alt');
          
        // Extracting value of height attribute
        // of the current image object
        $height = $element -> getAttribute('height');
          
        // Extracting value of width attribute of
        // the current image object
        $width = $element -> getAttribute('width');
          
        // Given Output as image with extracted attribute,
        // you can print value of those attributes also
        echo '<img src="'.$src.'" alt="'.$alt.'" height="'
                . $height.'" width="'.$width.'"/>';
    }
   
   
?>


Output:

Example 2: This example displays the attribute of an image object.




<?php
// error_reporting(0);
    
function crawl_page($url) {
  
    $dom = new DOMDocument('1.0');
      
    // Loading HTML content in $dom
    @$dom->loadHTMLFile($url);
      
    // Selecting all image i.e. img tag object
    $anchors = $dom -> getElementsByTagName('img');
      
    // Extracting attribute from each object
    foreach ($anchors as $element) {
          
        // Extracting value of src attribute of
        // the current image object
        $src = $element -> getAttribute('src');
          
        // Extracting value of alt attribute of
        // the current image object
        $alt = $element -> getAttribute('alt');
          
        // Extracting value of height attribute
        // of the current image object
        $height = $element -> getAttribute('height');
          
        // Extracting value of width attribute of
        // the current image object
        $width = $element -> getAttribute('width');
          
        // Display Output as value of those attributes
        echo 'src='.$src.'<br> alt='.$alt.'<br> height='
                . $height.'<br> width='.$width.'<hr>';
    }
   
   
?>


Output:



Last Updated : 15 May, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads