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:
Recommended Articles