matejch/html_helpers

Helper class for removing elements and content, and extracting file paths

1.0.1 2022-06-17 10:29 UTC

This package is auto-updated.

Last update: 2024-04-17 17:08:10 UTC


README

latest_tag

Two PHP helper classes for removing html tags and extracting file paths

Install in your project

composer require matejch/html_helpers "^1.0.0"

class HtmlTagRemover

With class HtmlTagRemover you can remove specified html tags and its content from html string

Example: remove tags based on name

$service = new HtmlTagRemover($htmlString);
service->removeTags(['a','img']);

Example: remove tags based on content of attribute

$service = new HtmlTagRemover($htmlString);

$service->removeTags(['a' => 'href[files]']);

/** remove 'a' tags where href attribute contains `files` substring and span elements contains class with `test` string */
$service->removeTags(['a' => 'href[files]','span' => 'class[test]']);

class HtmlFileExtractor

I created this class, because I needed to extract file paths from html before sending email, and add the as attachment

This class can return source from img or a tags automatically

But also from custom tags or attributes

Example: get file paths from img and a tag

$service = new HtmlFileExtractor($htmlString);

/** return files as array of strings directly from href and src */
$service->getFiles(['img','a'])

Example: get file paths other tags or specified attributes

/** return files as array of strings from class attributes of span elements */
$service->getFiles(['span' => 'class'])

$service->getFiles(['span' => 'class','img'=>'alt'])

/** return files as array of strings from class attributes of span elements, 
 * where class contains substring 'es' and from alt attribute of image tags
 */
$service->getFiles(['span' => 'class[es]','img'=>'alt'])

Remove package from your project

composer remove matejch/html_helpers