Skip to content

Commit eec3cb5

Browse files
authored
Merge pull request paquettg#193 from rikvdh/issue-191
Fix for issue 191
2 parents f68de99 + a643b61 commit eec3cb5

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/PHPHtmlParser/Selector/Selector.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ public function checkComparison(array $rule, AbstractNode $node): bool
354354

355355
// handle multiple classes
356356
if ( ! $check && $rule['key'] == 'class') {
357-
$nodeClasses = explode(' ', $node->getAttribute('class'));
357+
$nodeClasses = explode(' ', $node->getAttribute('class') ?? '');
358358
foreach ($rule['value'] as $value) {
359359
foreach ($nodeClasses as $class) {
360360
if ( ! empty($class)) {

tests/DomTest.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -483,4 +483,14 @@ public function testCaseSensitivity()
483483
$FooBar = $dom->find('FooBar');
484484
$this->assertEquals('asdf', $FooBar->Attribute);
485485
}
486+
487+
public function testEmptyAttribute()
488+
{
489+
$str = '<ul class="summary"><li class></li>blah<li class="foo">what</li></ul>';
490+
$dom = new Dom();
491+
$dom->load($str);
492+
493+
$items = $dom->find('.summary .foo');
494+
$this->assertEquals(1, count($items));
495+
}
486496
}

0 commit comments

Comments
 (0)