protected static function _getTextNode(DOMNode $domNode): array
{
$res = [];
+ $exclude = ['script', 'style', 'link'];
foreach ($domNode->childNodes as $node) {
+ if (in_array($node->nodeName, $exclude)) {
+ continue;
+ }
if ($node instanceof \DOMText) {
$res[] = $node->nodeValue;
}
$doc = new DOMDocument('1.0', 'utf-8');
$doc->loadHTML('<?xml version="1.0" encoding="utf-8">' . $string);
- $res = static::_getTextNode($doc);
+ $nodes = static::_getTextNode($doc);
+ $res = [];
+ foreach ($nodes as $node) {
+ $node = trim($node);
+ if (!$node) {
+ continue;
+ }
+ $res[] = $node;
+ }
return $res;
} catch (\Exception $e) {
return [$string];