balpom / links-extractor
从字符串中提取所有链接(扩展 PSR-13 格式)。
v1.1.2
2024-05-29 14:57 UTC
Requires
- php: >=8.1
- balpom/web-link: ^1.1
- psr/link: ^1.1|^2.0
- sabberworm/php-css-parser: >=8.5.1
README
从字符串中提取所有链接,并以扩展 PSR-13 格式提供。
此提取器从给定字符串(或 PSR-7 响应对象)中提取所有 HTTP 链接,并以 Balpom\WebLink\EvolvableWebLinkInterface 格式(扩展 Psr\Link\EvolvableLinkInterface (https://www.php-fig.org/psr/psr-13/)格式)作为 Psr\Link\LinkProviderInterface 格式(集合)提供(另请参阅 https://www.php-fig.org/psr/psr-13/)。
要求
- PHP >= 8.1
安装
使用 composer(推荐)
composer require balpom/links-extractor
如何使用
此包中有两种提取器实现:Balpom\LinksExtractor\SimpleExtractor 和 Balpom\LinksExtractor\Extractor
SimpleExtractor 使用示例
$css = 'div.cls1{background-image:url(/image-file-1.jpg);} span.cls2{background-image:url(/image-file-2.png);}'; $extractor = new SimpleExtractor($css, 'text/css'); $linksProvider = $extractor->extract(); print_r($linksProvider->getLinks());
$html = '<a href="/page.html">ABC</a><a href="/page.html">XYZ</a> <img src="/image-file-3.gif"><div>Else one <img src="/image-file-3.gif"></div>'; $extractor = new SimpleExtractor($html, 'text/html'); $linksProvider = $extractor->extract(); print_r($linksProvider->getLinks());
Extractor 也可以作为 SimpleExtractor 使用,但构造函数参数为 Psr\Http\Message\ResponseInterface 对象(https://www.php-fig.org/psr/psr-7/),而不是字符串。
许可证
MIT 许可证 查看 LICENSE.MD